计算机中存储的数值,正数为其原码,而负数存的是其补码。
正数
原码:用最高位表示符号位,其余位表示数值。其中,正数的符号位为 0,负数的符号位为 1。
正整数转成二进制:除二取余,直到商为零或一时为止,然后倒序排列。
举个栗子:
121–>0
1111001
2 | 1 2 1 1
2 | 6 0 0
2 | 3 0 0
2 | 1 5 1
2 | 7 1
2 | 3 1
1 1
负数
负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1。
举个栗子:
-121–>1
1111001
取反–>1
0000110
加1–>1
0000111
所以-121
在计算机中的存储形式为1000 0111
。