您的位置:首页 > 其它

用补码表示负数而抛弃原码表示的原因

2013-03-27 22:45 225 查看
先说下我的理解:

从软件出发:

1、方便加减运算。拿钟表来说吧,早上6点 --3个小时=凌晨3点。早上6点+9个小时=下午3点。同样都是钟表“3”的位置,6-3=6+9;加法运算是不是方便多了呢。所以负数

其实我们小学算数时,老师就告诉我们:3-2可以看成3+(-)2.

2、对于负数来说,原码+补码=0 (因为原码+补码=原码+反码+1=1111+1=0000)

所以用补码比用反码表示负数,运算上方便多了。

从硬件出发:

1、可以将减法变为加法,省去了减法器

2、无符号及带符号的加法运算可以用同一电路完成。

3、负数的补码,与其对应正数的补码之间的转换可以用同一种方法----求补运算完成,简化硬件。

下面是别人的说法:

补码运算的优点:

(1)减法运算可以用加法来实现,即用求和来代替求差。

(2)数的符号位可以同数值部分作为一个整体参与运算。

(3)两数的补码之和(差)=两数和(差)的补码

原码 补码

A 1100 1100

B
1101 1011

A+B 1001 0111

A+B的补码 0111
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: