在深入理解计算机系统一书中,看到了对补码的解释,和我之前学习的不大一样,而且我之前学的也忘了。今天看了这个计算方式就很清晰。
补码的含义:
用于有符号数的计算机表示方式。
快速理解:
正常的无符号的编码很简单,0~65535对应 0x0000~0xFFFF。
补码表示的有符号数,记得最高位为负权重位即可:
0011 : 1*2 +1 = 3
1110 : (-1)*2*2*2 + 1*2*2 + 1*2 = -8 + 4 +2 = -2。
有符号数还有两种表示方式:反码和原码。
在深入理解计算机系统一书中,看到了对补码的解释,和我之前学习的不大一样,而且我之前学的也忘了。今天看了这个计算方式就很清晰。
用于有符号数的计算机表示方式。
正常的无符号的编码很简单,0~65535对应 0x0000~0xFFFF。
补码表示的有符号数,记得最高位为负权重位即可:
0011 : 1*2 +1 = 3
1110 : (-1)*2*2*2 + 1*2*2 + 1*2 = -8 + 4 +2 = -2。
有符号数还有两种表示方式:反码和原码。