As per o/p below:
00 00 80 3f
 01 00 00 00
 44 ff 28 00
 01 00 00 00

first byte address is first row.
second byte address is second row.
third byte address third row
and so on

but how first row containg 3 values...as 1byte=2hexdigits..si only two
digits must be there.
and u said 44 ff 28 00 is address of i..how???getting a lot confused..plz
clearify..thnx in advance

On Sun, Oct 21, 2012 at 1:10 AM, Saurabh Kumar <srbh.ku...@gmail.com> wrote:

> Sorry, about that.
> Read it as:
> Yes a hex digit is represented by 4 bits but 1 Byte is being read using a
> char pointer* and you're printing the values in those Bytes.
>
>
> On 21 October 2012 01:03, Saurabh Kumar <srbh.ku...@gmail.com> wrote:
>
>> Sorry, I don't understand your question. *%.2x *is only a precision
>> specifier still.
>> (%.2x was used for neat formatting only, because you are printing the
>> values only 1 Byte long and a Byte can occupy at max 2digits in hex)
>>
>> >>>>hex representated by 4 bits.
>> Yes hex is represented by 4 bits i.e. 1 Byte and that's what you are
>> reading with a char pointer*,  1 Byte each time and printing the values in
>> those Bytes.
>>
>> >>>>total we have to represent 32 bits and 8 bits in each....plz xplain
>> Each output represents 32bits only. 1 Byte each (in total 4Bytes)
>>
>> It's showing you the memory layout. You stored *i = 1; *and when probed
>> it using a char pointer. you found following four bytes written:  *01 00
>> 00 00*
>> It shows that on your machine:
>> 1. int is 4bytes long. (4x1Byte)
>> 2. First byte stores the least significant value, hence you are working
>> on a Little endian machine.
>>
>> similarly, for pointer:
>> char pointer reads 1 Byte at a time. It read 4Bytes in total i.e. 32
>> bits. Hence, you are working on a 32 bit machine. (as pointer has value:
>> *44 ff 28 00, *address of i)*.*
>> *
>> *
>> *
>> *
>> PS: This is an algorithm group, please refrain from asking such language
>> specific questions.
>>
>> On 21 October 2012 00:19, rahul sharma <rahul23111...@gmail.com> wrote:
>>
>>> Actually i have taken form   http://www.geeksforgeeks.org/archives/730
>>> Please explain me o/p...as hex representated by 4 bits....then how cum
>>> is following o/p
>>>  00 00 80 3f
>>>  01 00 00 00
>>>  44 ff 28 00
>>>  01 00 00 00
>>>
>>> total we have to represent 32 bits and 8 bits in each....plz xplain
>>>
>>> On Sun, Oct 21, 2012 at 12:05 AM, rahul sharma 
>>> <rahul23111...@gmail.com>wrote:
>>>
>>>> void show_bytes(byte_pointer start, int len)
>>>> {
>>>>      int i;
>>>>      for (i = 0; i < len; i++)
>>>>            printf(" %.2x", start[i]);
>>>>      printf("\n");
>>>> }
>>>>
>>>>
>>>>
>>>> byte_pointr is unsigned char *...typedef unsigned char *
>>>> byte_pointer....
>>>> plz tell me use of %.2x  i knowx is for hexa........does it mean print
>>>> 8 bites of address in 4 hexa of 2 bits???i cant get xactly plz explain
>>>>
>>>
>>>  --
>>> You received this message because you are subscribed to the Google
>>> Groups "Algorithm Geeks" group.
>>> To post to this group, send email to algogeeks@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>> algogeeks+unsubscr...@googlegroups.com.
>>> For more options, visit this group at
>>> http://groups.google.com/group/algogeeks?hl=en.
>>>
>>
>>
>  --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to algogeeks@googlegroups.com.
> To unsubscribe from this group, send email to
> algogeeks+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algogeeks@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to