I'm guessing this is a really basic understanding problem on my part but I am trying to set a variable as:
unsigned char randomnumber = 2^(0x03);
Now, in my head, I expect 2^3 = 8 (0x08) but the program is giving me 0x0001; I've tried manipulating it all the way down to:
unsigned char randomnumber = ((int)2)^((unsigned char)(0x03));
but all I'm getting is 0x01 rather than the previous 0x0001. I'm guessing this has to do with a fundamental misconception on how this is actually processing the data. Can anyone help me understand what it is I'm doing wrong?
Any help would be appreciated. Thanks, guys!
Good to know. Thanks for the help!