作者DerekJeter (MLB第一型男)
看板Electronics
标题[问题] 二补数运算全加器 carry out 的问题
时间Wed Apr 30 23:22:24 2008
4-bit 对 4-bit 二补数的加法运算
也就是 input a[3:0], b[3:0]
和 output sum[3:0] 都是二补数表示法
另外还有 input carry_in 和 output carry_ou, overflow
想请问 carry_out 的定义以及如何工作?
overflow 就是当 sum 不在 -8 ~ 7 之间时要显示 overflow = 1
当 overflow 发生时,计算结果应该把 carry_out 一起拿来看
也就是 {carry_out,sum}
那如果没有发生 overflow 时的 carry_out 应该如何显示呢?
是否不用理它(显示0或1都OK)?
我有在网路找过一些电路图
譬如说 ripple carry adder
它就直接把最後一个的 full adder 的 c_out 当作 carry_out
可是当 3+(-1) 时
加法器做的其实是 a = 0011, b = 1111, c_in = 0
carry 1 1 1 1
a 0 0 1 1
b 1 1 1 1
+) c_in 0
----------------------------
sum 0 0 1 0
也就是会使 carry_out = 1
这样是正确的吗?
还是应该让它为 0 (因为计算结果2是正数)
感激不尽
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.123.122
※ 编辑: DerekJeter 来自: 140.114.123.122 (04/30 23:24)