📜  数字逻辑中的加法器和减法器

📅  最后修改于: 2021-09-27 14:36:46             🧑  作者: Mango

组合逻辑电路框图:

组合逻辑电路注意事项:

  1. 输出取决于输入的组合。
  2. 输出只是当前输入的纯函数,即先前状态输入不会对输出产生任何影响。此外,它不使用内存。
  3. 换句话说,
    OUTPUT=f(INPUT)
  4. 输入称为电路的激励,输出称为组合逻辑电路的响应。

组合逻辑电路的分类:

1. 算术:

  • 加法器
  • 减法器
  • 乘数
  • 比较器

2. 数据处理:

  • 多路复用器
  • 解复用器
  • 编码器和解码器

3. 代码转换器:

  • BCD 到 Excess-3 代码,反之亦然
  • BCD 到格雷码,反之亦然
  • 七段

半加器和全加器的设计:

  • 执行两个单个位相加的组合逻辑电路称为半加器。
  • 执行三个单个位相加的组合逻辑电路称为全加器。

1. 半加法器:

  • 它是一种算术组合逻辑电路,旨在执行两个单个位的加法。
  • 它包含两个输入并产生两个输出。
  • 输入称为Augend 和Added bits,输出称为Sum 和Carry。

让我们观察单个位的添加

0+0=0
0+1=1
1+0=1
1+1=10

由于 1+1=10,结果必须是两位输出。所以,上面可以改写为,

0+0=00
0+1=01
1+0=01
1+1=10

1+1 的结果是 10,其中“1”是进位输出(C out ),“0”是和输出(正常输出)。

半加器真值表:

下一步是绘制逻辑图。要绘制逻辑图,我们需要布尔表达式,可以使用 K-map(卡诺图)获得。由于有两个输出变量’S’和’C’,我们需要为每个输出变量定义K-map。

输出变量 Sum ‘S’ 的 K 映射:

K-map 是乘积形式的总和。得到的方程是

S = AB' + A'B 

逻辑上可以写成,

S = A xor B

输出变量 Carry ‘C’ 的 K 映射:

从 K-map 得到的方程是,

C = AB

使用布尔表达式,我们可以绘制逻辑图如下..

限制:
在半加法器中不能添加进位。

2. 全加器:

  • 为了克服半加器面临的上述限制,实现了全加器。
  • 它是一个算术组合逻辑电路,执行三个单比特的加法。
  • 它包含三个输入(A、B、C in )并产生两个输出(Sum 和 C out )。
  • 其中,C in -> Carry In and C out -> Carry Out

全加器真值表:

输出变量 Sum ‘S’ 的 K-map 简化:

得到的方程是,

S = A'B'Cin + AB'Cin' + ABC + A'BCin' 

方程可以简化为,

S = B'(A'Cin+ACin') + B(AC + A'Cin')
S = B'(A xor Cin) + B (A xor Cin)'
S = A xor B xor Cin 

输出变量 ‘C out ‘ 的 K-map 简化

得到的方程是,

Cout = BCin + AB + ACin 

全加器逻辑图:

3. 半减法器:

  • 它是一种组合逻辑电路,旨在执行两个单个位的减法。
  • 它包含两个输入(A 和 B)并产生两个输出(Difference 和 Borrow-output)。

半减法器真值表:

输出变量 ‘D’ 的 K-map 简化:

得到的方程是,

D = A'B + AB'

逻辑上可以写成,

D = A xor B 

输出变量 ‘B out ‘ 的 K-map 简化:

从上面的K-map得到的方程是,

Bout = A'B 

半减法器逻辑图:

4. 全减法器:

  • 它是一种组合逻辑电路,旨在执行三个单个位的减法。
  • 它包含三个输入(A、B、B in )并产生两个输出(D、B out )。
  • 其中,A 和 B 称为被减数减数位。
  • 并且,B in -> Borrow-In 和 B out -> Borrow-Out

全减法器真值表:

输出变量 ‘D’ 的 K-map 简化:

从上面的K-map得到的方程是,

D = A'B'Bin + AB'Bin' + ABBin + A'BBin'

可以简化为,

D = B'(A'Bin + ABin') + B(ABin + A'Bin')
D = B'(A xor Bin) + B(A xor Bin)'
D = A xor B xor Bin 

输出变量 ‘B out ‘ 的 K-map 简化:

得到的方程是,

Bout = BBin + A'B + A'Bin  

全减法器逻辑图:

应用:

  1. 用于在电子计算器和其他数字设备中执行算术计算。
  2. 在定时器和程序计数器中。
  3. 在数字信号处理中很有用。