什么是反码、补码和补码运算
的有关信息介绍如下:反码补码是二进制常用的一种运算方式,在二进制中,为了区别正数和负数,在二进制的前年加以一位符号位,符号位0表示这个数为正数,符号位为1表示这个数为负数,这种形式的数码称为原码
在做运算时,如果两个数用原码表示,需要比较两数的绝对值大小,然后以绝对值大的一个减去绝对值小的一个,求出差后,以绝对值大的一个符号作为差值的符号。
这样计算比较麻烦,如果能用两数的补码代替上述的减法操作,就是运算器的电路结构大为简化
举例,你下午五点钟发现手表停在了上午十点,这时你必须把表调到五点,这时有两种调法,一种往回调5个小时,一种你往上调7个小时,10+7=17,17-12=5,这个例子说明10-5的运算可以用10+7来代替,这时我们说7为-5的补数,同样这个道理可以用于二进制
一种往回调5个小时,一种你往上调7个小时,10+7=17,17-12=5,这个例子说明10-5的运算可以用10+7来代替,这时我们说7为-5的补数,同样这个道理可以用于二进制
添加网络视频
基于上述算法原理,对于有效数字(不包括符号位)n,当他为正数时(符号位为0),补码与原码相同,当为负数(符号位为1时),它的补码为2的n次方减N
为了避免在求补码的过程中做减法运算,通常先求出N的反码
,然后在负数的反码上加1得出补码,即二进制负数的补码等于他的反码加1
如图上所描述
如图,得出反码,补码