计算机补码

http://wenku.baidu.com/view/369a4c8502d276a200292ea8.html


一、为什么计算机中所有的数值都是用补码(而不是用原码、反吗)表示?

1、可以将符号位与其他位统一处理,无须单独设置符号处理线路。

2、只使用加法器就可以实现加减运算。

3、两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。


二、用补码表示的真值,正数与负数是怎样转换的?


例:求-7的补码表示。

解1:+7的补码表示为00000111,按照转换规则得出-7的补码表示为11111001。

解2:还有一种做法是根据原码“求反加1”,这种做法将符号位单独拿出来,剩余的位数取反加1。

  - 7的原码表示为10000111,将符号位除外的其他位“求反”得11111000,再将其“加1”得11111001。


三、补码定点加减运算是怎样判断溢出的?

通常用符号位产生的进位与最高有效位产生的进位异或操作后,按其结果进行判断。若异或结果为1,表示溢出;异或结果为0,则无溢出。也就是说最高位和次高位同时进位,无影响;但其中只有一个进位,产生溢出。


四、补码定点加减法硬件配置


图中寄存器A、X、加法器的位数相等,其中A存放被加数的补码,X存放加数的补码。当作减法时,由“求补控制逻辑"将X送至加法器,并使加法器的最末位外来进位为1,以达到对减数求补的目的。运算结果溢出时,通过溢出判断电路置”1“溢出标记V。Ga为加法标记,Gs为减法标记。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值