【发布时间】:2010-10-15 05:31:31
【问题描述】:
我正在学习数字逻辑课程,我正在尝试将这个二进制数相乘。我不确定什么是进位和结转。老师的幻灯片很可怕。看起来他使用了一个真值表来做到这一点,但它令人困惑。
X1X0
+ Y1Y0
----
Z2Z1Z0
我想这就是它的设置方式!现在,对于乘法部分
1 carry in?
110101
X 1101
------
101011001 thats what i ended up with. Probobly, not right!
我认为我的真值表应该是这样的:请记住,这不是我上面的答案所设置的
X1X0
+ Y1Y0
----
Z2Z1Z0
X0 Y0 Carry Z0
0 0 0 0
1 0 0 1
0 1 0 1
1 1 1 0
X1 Y1 Carryin Carryout Z1
0 0 0 0 0
1 0 0 0 1
0 1 0 0 1
1 1 0 1 0
0 0 1 0 1
1 0 1 1 0
我对 x1 和 y1 部分感到困惑 如果我能看到它的实际效果,并在其倍增时标出“carry in”和“carry out”是什么,那就更容易了。
“进位”是1+1的结果,“进位”是下一个进位的结果吗?
我认为在我们完成真值表之后,进行进位和执行 我们将使用布尔代数,例如:
Z1 = X1• Y1' • Carryin' + X1' • Y1• Carryin' + X1' • Y1' • Carryin + X1• Y1• Carryin
Carryout = X1• Y1• Carryin' + X1 • Y1' • Carryin + X1' • Y1• Carryin + X1 • Y1• Carryin
Z2 = Carryout
我们将“仅使用 NAND 运算符计算 AND、OR 和 NOT 函数的方程式”。不知道该怎么做!
【问题讨论】: