|
|
|
|
|
by odo1242
1326 days ago
|
|
No, it's because the reason that integers overflow is that negative numbers are technically stored as larger than positive numbers in the Two's complement representation most computers use to store integers. Neither low and high are floats. Example with 8-bit integers (from wikipedia): Bits, Unsigned value, Signed value 0000 0000, 0, 0 0000 0001, 1, 1 0000 0010, 2, 2 0111 1110, 126, 126 0111 1111, 127, 127 1000 0000, 128, −128 When the logical bit shift is conducted on -128, -128 is treated as an unsigned integer. Its sign bit gets shifted such that the integer becomes 0100 0000, aka 64. |
|