我想设计一个逻辑电路来计算两个二进制数之间的差异,符号A和B有4位,并且还想计算传播延迟并确定值? 有人可以帮忙! 我确实创建了一个带有add / sub和B值的xor门,并连接到全加器,当子值为1时,将1添加到第一个完整加法器,使其为2的补码。 我的问题是符号位。当它是负数时我是否必须在2的补码中改变A的值(我只是困惑)
答案 0 :(得分:0)
要获得两个数字A和B之间的差异,必须使用A或B的2的补码。
许多新手对产生2补码的操作感到困惑。
不要忘记你必须定义加法器的比例,a.k.a,4bits? 8位?最左边的位是符号位。
例如,让我们对A = 4
和B = -1
进行处理,显然4位加法器就足够了。
A = 0100 and B = ~(0001) + 1 = 1111
代表2的补充。
因为你要求差异,我们应该再次为B做补充。
A-B = 0100 + ~(1111)+1 = 0101
A-B = 5.
正如Guffa所说,在你提出这样的问题之前,你应该在维基上学习一些材料。