为什么将负数存储为2的补数?

2021年5月1日18:04:16 发表评论 128 次浏览

在其他表示形式中对二进制数进行加/减时, 我们需要应用不同的逻辑(电路)来执行加减。在2s补码表示, 我们按原样表示一个正数, 用其对应的2s补码表示一个负数, 因此我们可以使用同一电路执行加法和减法。

例如:使用5位2s补码表示法添加6 + 3,

00110

+

00011

——–

01001

要减去6-3, 重写为6+(-3):

00110

+

11101(3的2s补数)

——-

00011


一盏木

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: