Address operator and pointers, Operating System

Assignment Help:

  We are use to using variables within C without thinking about where they are stored. Most variables are dynamic i.e. can change, therefore they are stored in Ram, unlike a program once developed is static i.e. doesn't change; this is often storage in EPROM or Rom. We can directly access the address where the variable is stored by means of the address operator '&' .This returns the address of the variable followed i.e.

printf("The address of var A is %lx and the contents of var A is %x",&a,a) 
 
This address is often fixed by the compiler and cannot be altered easily, very often we want initialize the address of a variable and vary it, C uses the concept of the pointer to handle this. A pointer is a variable which holds an address (This is in fact an address register on the 68Hc11 i.e. X, Y). We can explicitly load up the variable with any number (address which we like) and perform simple mathematical functions on it i.e. add, mul, sub etc. In order to declare the variable as a pointer we need to prefix it with a * in its declarations i.e.

      int *point;  
      char *point; 
      float *point;

The type of pointer  used describes the size of the data to be read  i.e. a char pointer reads 7 bits of data , unsigned char 8 bits i.e. (some programmers use sizeof function to get actual machine size).

    char * point  == 7 bits
     unsigned char * point  == 8 bits
     int * point  == 15 bits
     unsigned int  * point  == 16 bits
     float * point  == 31 bits
     unsigned float  * point  == 32 bits


Related Discussions:- Address operator and pointers

Program of calculator and controller - fork, Program of Calculator and Con...

Program of Calculator and Controller with the fork, exec, and wait system calls The objective of this assignment is to get you to be comfortable with the fork(), exec(), and wai

Virtual addresses, Virtual addresses are made up of two parts: the ?rst par...

Virtual addresses are made up of two parts: the ?rst part is the page number, and the second part is an offset inside that page. Suppose our pages are 4kb (4096 = 212 bytes) long,

Explain a boot control block, Explain a boot control block A boot contr...

Explain a boot control block A boot control block can have the information required by the system to boot an operating from that partition. If the disk does not have an operati

Is disk scheduling except fcfs scheduling, Q. Is disk scheduling except FC...

Q. Is disk scheduling except FCFS scheduling useful in a single-user environment? describe your answer. Answer: In a single-user environment the I/O queue typically is empty.

Necessary conditions for deadlock, Here are the conditions necessary for a ...

Here are the conditions necessary for a deadlock to occur; note that all of them are necessary, and none is suf?cient: 1. ?nite resources: the resources are held in a mutually-e

What are the different accessing methods of a file, What are the different ...

What are the different accessing methods of a file? The different types of accessing a file are: Sequential access: Information in the file is accessed sequentially

What do you understand by “line balancing”? What happens if , What do you u...

What do you understand by “line balancing”? What happens if balance doesn’t exist?

Recognition of essential syntactic constructs by reductions, Recognition of...

Recognition of essential syntactic constructs by reductions, this task is carried out by Recognition of essential syntactic constructs by reductions, this task is carried out

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd