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

Synchronization, What is the different between basic synchronization and hi...

What is the different between basic synchronization and high level synchronization

Define unix device driver, Define UNIX device driver The UNIX device dr...

Define UNIX device driver The UNIX device driver is structured into two halves called top half and bottom half

Define the division of labour between client and server, Define the Divisio...

Define the Division of Labour between Client and Server Given our definition of client - server as the interaction between dispersed application logic components it must be not

Write knowledge base relevant propositional statement, Suppose a logic-base...

Suppose a logic-based agent in the wumpus world has found that locations (1,1) and (2,1) do not contain a stench, but that locations (3,1) and (2,2) do contain a stench. Can the ag

Protection, Can you please explain in easy words how input output protectio...

Can you please explain in easy words how input output protection works

Research proposal, what topic i choose for os research proposal

what topic i choose for os research proposal

Explain contiguous allocation, Contiguous allocation The contiguous-all...

Contiguous allocation The contiguous-allocation method needs each file to occupy a set of contiguous blocks of the disk. Disk addresses explain a linear ordering on the disk. T

Explain memory management using link lists, MEMORY MANAGEMENT USING LINK LI...

MEMORY MANAGEMENT USING LINK LISTS The first one is for showing it is process or hole, second is for starting address and third is for length of the process and last is a point

Describe why sstf scheduling tends to favour middle cylinder, Q. Describe w...

Q. Describe why SSTF scheduling tends to favour middle cylinders over the innermost and outermost cylinders. Answer: The middle of the disk is the location having the smalles

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