减法器原理
[編輯] [转简体] (简体译文)
|
作者:huidong
| 分類:【算法】硬件原理相關
[
24 瀏覽
0 評論
6 贊
7 踩
]
概要
正文
A - B = A + (~B + 1)
(~B + 1) 是 B 的补码,相当于 -B
因为任意一个数和它经过取反运算的数相加后一定的得到 1111 1111,此时再加一就得到 0。
在加法器中可以加入一个引脚实现减法,且称其为 SUB。如果 SUB 为 0,执行加法,如果 SUB 为 1,执行加法。
为了判断 SUB 是 0 是 1,可以直接将 B 的每一位和 SUB 异或。这样,如果 SUB 是 0,那么 B 中 1 仍输出 1,0 仍输出 0;如果 SUB 为 1,那么 B 中 1 变成 0,0 变成 1。
此时在 SUB 为 1 时取反成功,但是还需要将 B 加一。
这里正好可以使用加法器第一位的进位标志,平时都没有用到它,如果将其直接和 SUB 接到一起,那么,SUB 为 1 时,计算的时候不就加一了吗。
以上就是减法器的原理。