Anup Joshi wrote:
> hello friend 
> noticing that my previous post was too short and complicated to understand i 
> have decided to give a better reply to you. unions save a lot of time and 
> handle complicated tasks easily and urs seems similar to that so here is a 
> simple example of unions for you with its output:
>
> unions.c:
> ========================================
>
> #include <stdio.h>
>
> union vals {
>     unsigned short x;
>     unsigned char y[1];
> } myvals;
>
> int main() {
>     myvals.y[0] = 1;  //lsb  -- 00000001
>     myvals.y[1] = 21; //msb --00010101
>   
unsigned char y[1] only has a valid subscript of 0
whether your solution works will depend on whether you're on a big or 
little endian system
>     printf("%d", myvals.x); // displaying 16 bit uint 0001010100000001
>     printf("\n %d", sizeof(myvals));
> }
>
> ==========================================
> and its output is :
>
> 5377
>  2
>
> The size of a union is equal to the size of it's largest data member. in this 
> case it is 2 bytes bcoz of 16bit uint. and the uint and the array of char 
> share the same memory space. hence using array of 2 1 byte uchars we can 
> easily access the lsb and msb of the uint.
> i hope you understand this time what i am trying to say and this works for 
> you too. sorry for the last post which was not very useful. i was using 
> borland turbo c++ 3.0's c compiler on my machine. 
>
> bdrmachine <[EMAIL PROTECTED]> wrote:                                  Can 
> someone give me a C example of how to combine 2 unsigned chars (msb 
>  and lsb) and store as a unsigned int (L)? It seams the technique I'm 
>  using is more involved then it should be. Would "L= msb<<8 + lsb;" 
>  work?  I'm working on a program for a 8 bit microcontroller. Unsigned 
>  char's are 8 bits long and unsigned int's are 16 bits.
>  
>  Thanks
>  Brian  
>  
>  
>      
>                   
>
>
>
>        
> ---------------------------------
> Ready for the edge of your seat? Check out tonight's top picks on Yahoo! TV. 
>
> [Non-text portions of this message have been removed]
>
>
>
> To unsubscribe, send a blank message to <mailto:[EMAIL PROTECTED]>. 
> Yahoo! Groups Links
>
>
>
>
>   

Reply via email to