I multiply 0x1d400 * 0xE070381D.
When I do this on my calculator, the result 0x00019A4D26950400
When I tried to implement this in cpp here, what I have.
long long d;
d = 3765450781 * 1d400;
The result obtained by this code is that d = 0x26950400. These are just the bottom 4 bytes, what happened to everything else?
I am trying to allocate the top 4 bytes 0x00019A4Dand store them in another variable. How can I do that?
If I could get the multiplication to display all 8 bytes, what I was thinking of doing was to allocate the top 4 bytes:
d = d & 0xFF00; //0xFF00 == (binary) 1111111100000000
d = d>>8;
Will this work?
source
share