原码、补码和反码

正数的原码、反码和补码是一样的,并且符号位(第一位)是0。

例如:9的原码:00001001    反码:00001001    补码:00001001

负数:负数符号第一位是1。

         原码和反码的相互转换:符号位不变,数值位按位取反
         原码和补码的相互转换:符号位不变,数值位按位取反,末位再加1

例如:-8的原码:10001000      反码:11110111       补码:11111000

           -5的原码:10000101      反码:11111010       补码:11111011

计算机中数字以补码储存,因为原码和反码计算不准确,而补码是准确的。

例如:9+(-8)=1

         如果用原码:00001001+10001000=10010001即-17 错误。

         如果用补码:00001001+11111000=00000001 原码为00000001 即1。

posted @ 2019-09-19 21:26  vvxvv  阅读(3909)  评论(0编辑  收藏  举报