定义
正数:
原码=反码=补码
负数:
原码:符号位+数值位 (符号位0为正数,1为负数) eq: -7 :10000111
反码:符号位不变,其它位取反;11111000
补码:反码+1;11111001
(反码+1会产生进位:-12:反:11110011 补:11110100)
移码(变补):
不分正负,都是在补码基础上符号位取反;01111001
特殊值 0
0在计算机种分+0与-0,它们的原码,补码,反码如下:
[+0]原码=0000 0000, [-0]原码=1000 0000;
[+0]反码=0000 0000, [-0]反码=1111 1111;
[+0]补码=0000 0000, [-0]补码=0000 0000。
附加
补码的作用
节省计算机硬件。因为在计算机中,若使用原码进行运算则:加法通过加法器运算,减法通过减法器运算,数学中我们知道减法是可以通过加法实现的,
a-b = a+(-b)
因此有了补码的出现,计算机中使用补码进行运算,省去了减法器的存在。
移码的作用
移码的作用就是方便计算机比较两个数数值的大小,计算机只能通过一位一位的比较,它只知道1比0大,所以移码就是为了屏蔽那些符号位啥的干扰,让计算机轻松的比较数值的大小