数字电子教程

数字电子 - 主页

数字电子基础

数字系统的类型 信号类型 逻辑电平和脉冲波形 数字系统组件 数字逻辑运算 数字系统优势

数字系统

数字系统 二进制数表示 二进制运算 有符号二进制运算 八进制运算 十六进制运算 补码运算

进制转换

进制转换 二进制到十进制转换 十进制到二进制转换 二进制到八进制转换 八进制到二进制转换 八进制到十进制转换 十进制到八进制的转换 十六进制到二进制的转换 二进制到十六进制的转换 十六进制到十进制的转换 十进制到十六进制的转换 八进制到十六进制的转换 十六进制到八进制的转换

二进制代码

二进制代码 8421 BCD 码 余3码 格雷码 ASCII 码 EBCDIC 码 代码转换 错误检测和纠正码

逻辑门

逻辑门 与门 或门 非门 通用门 异或门 异或门 CMOS 逻辑门 使用二极管电阻逻辑的或门 与门与或门 两级逻辑实现 阈值逻辑

布尔代数

布尔代数 布尔代数定律 布尔函数 德摩根定理 SOP 和 POS 形式 POS 转换为标准 POS 形式

最小化技术

K-Map 最小化 三变量 K-Map 四变量 K-Map 五变量 K-Map 六变量K-Map 无关条件 Quine-McCluskey 方法 最小项和最大项 规范形式和标准形式 最大项表示 使用布尔代数进行简化

组合逻辑电路

数字组合电路 数字算术电路 多路复用器 多路复用器设计程序 多路复用通用门 使用 4:1 多路复用器的 2 变量函数 使用 8:1 多路复用器的 3 变量函数 解复用器 多路复用器与解复用器 奇偶校验位生成器和检查器 比较器 编码器 键盘编码器 优先级编码器 解码器 算术逻辑单元 7 段 LED 显示屏

代码转换器

代码转换器 二进制到十进制转换器 十进制到 BCD 转换器 BCD 到十进制转换器 二进制到格雷码转换器 格雷码到二进制转换器 BCD 到 Excess-3 转换器 Excess-3 到 BCD 转换器

加法器

半加法器 全加器 串行加器 并行加器 使用半加器的全加器 半加器与全加器 全带 NAND 门的加法器 带 NAND 门的半加法器 二进制加法器-减法器

减法器

半减法器 全减法器 并行减法器 使用 2 个半减法器的全减法器 使用 NAND 的半减法器门

顺序逻辑电路

时序电路 时钟信号和触发 锁存器 移位寄存器 移位寄存器应用 二进制寄存器 双向移位寄存器 计数器 二进制计数器 非二进制计数器 同步计数器的设计 同步与异步计数器 有限状态机 算法状态机

触发器

触发器 触发器的转换 D 触发器 JK 触发器 T 触发器 SR 触发器 时钟控制 SR 触发器 非时钟控制 SR 触发器 时钟控制 JK 触发器 JK 至 T 触发器 SR 至 JK触发器 触发器:触发方法 主从 JK 触发器 竞争条件

A/D 和 D/A 转换器

模拟数字转换器 数字模拟转换器 DAC 和 ADC IC

逻辑门的实现

使用 NAND 门实现非门 使用 NAND 门实现或门 使用 NAND 门实现 AND 门 使用 NAND 门实现 NOR 门 使用 NAND 门实现 XOR 门 使用 NAND 门实现 XNOR 门 使用 NOR 门实现 NOT 门 使用 NOR 门实现 OR 门 使用 NOR 门实现 AND 门 NAND 门和 NOR 门之间的区别 使用 NOR 门实现 XOR 门 使用 NOR 门实现 XNOR 门 使用 CMOS 的 NAND/NOR 门 使用 NAND 门的全减法器 使用 2:1 MUX 的 AND 门 使用 2:1 MUX 的 OR 门 使用 2:1 MUX 的非门

存储设备

存储设备 RAM 和 ROM 高速缓存设计

可编程逻辑设备

可编程逻辑设备 可编程逻辑阵列 可编程阵列逻辑 现场可编程门阵列

数字电子系列

数字电子系列

CPU 架构

CPU 架构

数字电子资源

数字电子 - 资源 数字电子 - 讨论


规范和标准形式

我们将两个变量 x 和 y 与逻辑 AND 运算组合起来,得到四个布尔乘积项。这些布尔乘积项称为最小项标准乘积项。最小项为 x'y'、x'y、xy' 和 xy。

同样,我们将两个变量 x 和 y 与逻辑 OR 运算组合起来,得到四个布尔和项。这些布尔和项称为最大项标准和项。最大项为 x + y、x + y'、x' + y 和 x' + y'。

下表显示了 2 个变量的最小项和最大项的表示。

x y 最小项 最大项
0 0 m0 = x’y’ M0 = x + y
0 1 m1 = x’y M1 = x + y’
1 0 m2 = xy’ M2 = x’ + y
1 1 m3 = xy M3 = x’ + y’

如果二进制变量为"0",则它在最小项中表示为变量的补码,在最大项中表示为变量本身。同样,如果二进制变量为"1",则它在最大项中表示为变量的补码,在最小项中表示为变量本身。

从上表中,我们可以很容易地注意到最小项和最大项是互为补码的。如果有"n"个布尔变量,那么将有 2n 个最小项和 2n 个最大项。

规范 SoP 和 PoS 形式

真值表由一组输入和输出组成。如果有"n"个输入变量,那么将有 2n 种可能的组合,其中 0 和 1。因此,每个输出变量的值取决于输入变量的组合。因此,对于某些输入变量的组合,每个输出变量将具有"1",而对于其他输入变量的组合,每个输出变量将具有"0"。

因此,我们可以用以下两种方式表示每个输出变量。

  • 规范 SoP 形式
  • 规范 PoS 形式

规范 SoP 形式

规范 SoP 形式表示规范乘积和形式。在此形式中,每个乘积项包含所有文字。因此,这些乘积项只不过是最小项。因此,规范 SoP 形式也称为最小项和形式。

首先,确定输出变量为 1 的最小项,然后对这些最小项进行逻辑或运算,以获得与该输出变量相对应的布尔表达式(函数)。此布尔函数将采用最小项之和的形式。

如果有多个输出变量,也请对其他输出变量执行相同的程序。

示例

考虑以下真值表

输入 输出
p q r f
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

这里,对于四种输入组合,输出 (f) 为"1"。相应的最小项为 p'qr、pq'r、pqr'、pqr。通过对这四个最小项进行逻辑或运算,我们将得到输出 (f) 的布尔函数。

因此,输出的布尔函数为 f = p'qr + pq'r + pqr' + pqr。这是输出 f 的规范 SoP 形式。我们也可以用以下两种符号来表示这个函数。

$$\mathrm{f \: = \: m_{3} \: + \: m_{5} \: + \: m_{6} \: + \: m_{7}}$$

$$\mathrm{f \: = \: \sum \: m\left ( 3, \:5, \:6, \:7 \right )}$$

在一个方程中,我们将函数表示为各个最小项之和。在其他方程中,我们使用符号来表示这些最小项的和。

规范 PoS 形式

规范 PoS 形式表示和的规范乘积形式。在这种形式中,每个和项都包含所有文字。因此,这些和项只不过是最大项。因此,规范 PoS 形式也称为最大项的乘积形式。

首先,确定输出变量为零的最大项,然后对这些最大项进行逻辑与,以获得与该输出变量相对应的布尔表达式(函数)。此布尔函数将采用最大项乘积的形式。

如果有多个输出变量,也请对其他输出变量执行相同的程序。

示例

考虑上一个示例的相同真值表。在这里,对于四种输入组合,输出 (f) 为"0"。对应的Max项为p+q+r,p+q+r',p+q'+r,p'+q+r。对这四个Max项进行逻辑与,可得到输出的布尔函数(f)。

因此,输出的布尔函数为,f = (p+q+r)·(p+q+r')·(p+q'+r)·(p'+q+r)。这是输出f的规范的PoS形式。我们也可以用以下两种符号来表示这个函数。

$$\mathrm{f \: = \: M_{0}\cdot M_{1} \cdot M_{2} \cdot M_{4}}$$

$$\mathrm{f \: = \: \prod M\left ( 0, \: 1, \: 2, \: 4 \right )}$$

在一个方程中,我们将函数表示为各个最大项的乘积。在其他方程中,我们使用符号来表示这些最大项的乘积。

布尔函数 f = (p + q + r)·(p + q + r')·(p + q' + r)·(p' + q + r) 是布尔函数 f = p'qr + pq'r + pqr' + pqr 的对偶。

因此,规范 SoP 和规范 PoS 形式都是彼此对偶的。从功能上讲,这两种形式是相同的。根据需求,我们可以采用这两种形式中的一种。

标准 SoP 和 PoS 形式

我们讨论了表示布尔输出的两种规范形式。同样,也有两种表示布尔输出的标准形式。这些是规范形式的简化版本。

  • 标准 SoP 形式
  • 标准 PoS 形式

我们将在后面的章节中讨论逻辑门。标准形式的主要优点是可以最小化应用于逻辑门的输入数量。有时,所需的逻辑门总数会减少。

标准 SoP 形式

标准 SoP 形式意味着标准乘积和形式。在这种形式中,每个乘积项不需要包含所有文字。因此,乘积项可能是也可能不是最小项。因此,标准 SoP 形式是规范 SoP 形式的简化形式。

我们将分两步获得输出变量的标准 SoP 形式。

  • 获取输出变量的规范 SoP 形式
  • 简化上述布尔函数,它是规范 SoP 形式。

如果有多个输出变量,也请对其他输出变量执行相同的程序。有时,可能无法简化规范的 SoP 形式。在这种情况下,规范和标准 SoP 形式相同。

示例

将以下布尔函数转换为标准 SoP 形式。

$$\mathrm{f \: = \: p'qr \: + \: pq'r \: + \: pqr' \: + \: pqr}$$

给定的布尔函数是规范的 SoP 形式。现在,我们必须简化这个布尔函数以获得标准 SoP 形式。

步骤 1 −使用布尔公理,x + x = x。这意味着,对任何布尔变量进行"n"次逻辑或运算将等于同一个变量。因此,我们可以再写两次最后一个项 pqr。

$$\mathrm{\Rightarrow \: f \: = \: p'qr \: + \: pq'r \: + \: pqr' \: + \: pqr \: + \: pqr \: + \: pqr}$$

步骤 2 −对第一项和第四项、第二项和第五项、第三项和第六项使用分配律

$$\mathrm{\Rightarrow \: f \: = \: qr(p' + p) \: + \: pr(q' + q) \: + \: pq(r' + r)}$$

步骤 3 −使用布尔公理,x + x' = 1 来简化每个括号中的项。

$$\mathrm{\Rightarrow \: f \: = \: qr(1) \: + \: pr(1) \: + \: pq(1)}$$

步骤 4 −使用布尔公理,x.1 = x 来简化上述三个项。

$$\mathrm{\Rightarrow \: f \: = \: qr \: + \: pr \: + \: pq}$$

$$\mathrm{\Rightarrow \: f \: = \: pq \: + \: qr \: + \: pr}$$

这是简化的布尔函数。因此,给定规范 SoP 形式对应的 标准 SoP 形式f = pq + qr + pr

标准 PoS 形式

标准 PoS 形式表示 标准和积 形式。在这种形式中,每个和项不必包含所有文字。因此,和项可能是也可能不是最大项。因此,标准 PoS 形式是规范 PoS 形式的简化形式。

我们将分两步获得输出变量的标准 PoS 形式。

  • 获取输出变量的规范 PoS 形式
  • 简化上述布尔函数,它是规范 PoS 形式。

如果有多个输出变量,也请对其他输出变量遵循相同的程序。有时,可能无法简化规范的 PoS 形式。在这种情况下,规范和标准 PoS 形式是相同的。

示例

将以下布尔函数转换为标准 PoS 形式。

$$\mathrm{f \: = \: (p + q + r)\cdot(p + q + r')\cdot(p + q' + r)\cdot(p' + q + r)}$$

给定的布尔函数是规范的 PoS 形式。现在,我们必须简化此布尔函数以获得标准 PoS 形式。

步骤 1 − 使用布尔公理,x · x = x。这意味着,对任何布尔变量进行"n"次逻辑与运算都将等于同一个变量。因此,我们可以再写两次第一个项 p+q+r。

$$\mathrm{\Rightarrow \: f \: = \: (p + q + r)\cdot(p + q + r)\cdot(p + q + r)\cdot(p + q + r')\cdot(p +q' + r)\cdot(p' + q + r)}$$

步骤 2 −使用分配律 x + (y · z) = (x + y)·(x + z) 作为第一和第四个括号、第二和第五个括号、第三和第六个括号。

$$\mathrm{\Rightarrow \: f \: = \: (p + q + rr')\cdot(p + r + qq')\cdot(q + r + pp')}$$

步骤 3 −使用布尔公理,x.x'=0 来简化每个括号中的项。

$$\mathrm{\Rightarrow \: f \: = \: (p + q + 0)\cdot(p + r + 0)\cdot(q + r + 0)}$$

步骤 4 −使用布尔公理,x + 0 = x 简化每个括号中的项

$$\mathrm{\Rightarrow \: f \: = \: (p + q)\cdot(p + r)\cdot(q + r)}$$

$$\mathrm{\Rightarrow \: f \: = \: (p + q)\cdot(q + r)\cdot(p + r)}$$

这是简化的布尔函数。因此,与给定的规范 PoS 形式相对应的 标准 PoS 形式f = (p + q)·(q + r)·(p + r)。这是布尔函数 f = pq + qr + pr 的对偶

因此,标准 SoP 形式和标准 PoS 形式都是彼此对偶的。