计算机为什么要补码运算(计算机组成原理)
计算机中的有符号数,符号位 数值位两部分,符号位0表示整数,1表示负数。在计算机系统中,数值一律用补码来表示和存储,原因在于,使用补码,可以将符号位和数值位统一处理,同时加法和减法也可以统一处理。
a.正整数的补码是其二进制表示,与原码相同。
b.求负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1 [4] 。同一个数字在不同的补码表示形式中是不同的。比如-15的补码,在8位二进制中是11110001,然而在16位二进制补码表示中,就是1111111111110001。以下都使用8位2进制来表示。
c.数0的补码表示是唯一的,000000000
补码求原码
已知一个数的补码,求原码的操作其实就是对该补码再求补码
⑴如果补码的符号位为“0”,表示是一个正数,其原码就是补码。
⑵如果补码的符号位为“1”,表示是一个负数,那么求给定的这个补码的补码就是要求的原码。
例:已知一个补码为11111001,则原码是10000111(-7)。
因为符号位为“1”,表示是一个负数,所以该位不变,仍为“1”。
其余七位1111001取反后为0000110;再加1,所以是10000111。
,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com