【数字电路】代数逻辑
1 代数逻辑的基本规则和运算法则
1.1 基本运算关系
- 自等律: A + 0 = A A+0=A A+0=A A ⋅ 1 = A A·1=A A⋅1=A
- 0 - 1律: A + 1 = 1 A+1=1 A+1=1 A ⋅ 0 = 0 A·0=0 A⋅0=0
- 重叠律: A + A = A A+A=A A+A=A A ⋅ A = A A·A=A A⋅A=A
- 还原律: A ‾ ‾ = A \overline{\overline{A}}=A A=A
- 互补律: A + A ‾ = 1 A+\overline{A}=1 A+A=1
- 交换律: A + B = B + A A+B=B+A A+B=B+A
- 结合律: A + ( B + C ) = ( A + B ) + C A+(B+C)=(A+B)+C A+(B+C)=(A+B)+C A ⋅ ( B ⋅ C ) = ( A ⋅ B ) ⋅ C A·(B·C)=(A·B)·C A⋅(B⋅C)=(A⋅B)⋅C
- 分配律: A ⋅ ( B + C ) = A ⋅ B + A ⋅ C A·(B+C)=A·B+A·C A⋅(B+C)=A⋅B+A⋅C A + B ⋅ C = ( A + B ) ⋅ ( A + C ) A+B·C=(A+B)·(A+C) A+B⋅C=(A+B)⋅(A+C)
- 吸收律:
9.1. 原变量的吸收: A + A B = A A+AB=A A+AB=A
9.2. 反变量的吸收: A + A ‾ B = A + B A+\overline{A}B=A+B A+AB=A+B
9.3. 混合变量的吸收: A B + A ‾ C + B C = A B + A ‾ C AB+\overline{A}C+BC=AB+\overline{A}C AB+AC+BC=AB+AC
1.2 德摩根律
A
⋅
B
‾
=
A
‾
+
B
‾
\overline{A·B}=\overline{A}+\overline{B}
A⋅B=A+B
A
+
B
‾
=
A
‾
⋅
B
‾
\overline{A+B}=\overline{A}·\overline{B}
A+B=A⋅B
证明:用真值表证明
德摩根律在电路设计中的应用:
注意:虽然上述逻辑门具有相同的逻辑关系,但是电路实体并不存在“非与门”、“非或门”
\color{red}{注意:虽然上述逻辑门具有相同的逻辑关系,但是电路实体并不存在“非与门”、“非或门”}
注意:虽然上述逻辑门具有相同的逻辑关系,但是电路实体并不存在“非与门”、“非或门”
2 逻辑函数的表示方法
2.1 真值表
- 真值表:表征逻辑事件输入和输出之间全部可能状态的表格。
- 通常以1表示真,0 表示假。
- 真值表是在逻辑中使用的一类数学表,用来确定一个表达式是否为真或有效。
2.2 逻辑表达式
- 逻辑表达式是指用与、或、非等逻辑运算符号来表达逻辑函数的表达式
(这个好像没什么要多说的,简单又好写)
2.3 逻辑电路图
- 一般可以由逻辑表达式直接画出相应的逻辑电路图
(这个更简单,不做赘述)
3 逻辑化简
3.1 用代数法化简逻辑函数
通过并项、添项、配项、吸收等方法,结合基本运算关系对逻辑函数进行化简
(逻辑性极强,不是很特别推荐,但是还是要会,或者说能看懂,所以下面给出一个例子)
F
=
A
⋅
B
+
A
‾
⋅
B
‾
‾
⋅
B
⋅
C
+
B
‾
⋅
C
‾
‾
‾
德摩根律
F
=
A
⋅
B
+
A
‾
⋅
B
‾
+
B
⋅
C
+
B
‾
⋅
C
‾
配项
F
=
A
⋅
B
+
A
‾
⋅
B
‾
(
C
+
C
‾
)
+
B
⋅
C
(
A
+
A
‾
)
+
B
‾
⋅
C
‾
分配律
F
=
A
⋅
B
+
A
‾
⋅
B
‾
⋅
C
+
A
‾
⋅
B
‾
⋅
C
‾
+
B
⋅
C
⋅
A
+
B
⋅
C
⋅
A
‾
+
B
‾
⋅
C
‾
交换、结合
F
=
A
⋅
B
+
A
⋅
B
⋅
C
+
A
‾
⋅
C
(
B
‾
+
B
)
+
A
‾
⋅
B
‾
⋅
C
‾
+
B
‾
⋅
C
‾
吸收、互补
F
=
A
⋅
B
+
A
‾
⋅
C
+
B
‾
⋅
C
‾
\begin{array}{c|lcr} & F=\overline{\overline{A·B+\overline{A}·\overline{B}}·\overline{B·C+\overline{B}·\overline{C}}}\\\\ 德摩根律 & F=A·B+\overline{A}·\overline{B}+B·C+\overline{B}·\overline{C}\\\\ 配项 & F=A·B+\overline{A}·\overline{B}(C+\overline{C})+B·C(A+\overline{A})+\overline{B}·\overline{C}\\\\ 分配律 & F=A·B+\overline{A}·\overline{B}·C+\overline{A}·\overline{B}·\overline{C}+B·C·A+B·C·\overline{A}+\overline{B}·\overline{C}\\\\ 交换、结合 & F=A·B+A·B·C+\overline{A}·C(\overline{B}+B)+\overline{A}·\overline{B}·\overline{C}+\overline{B}·\overline{C}\\\\ 吸收、互补 & F=A·B+\overline{A}·C+\overline{B}·\overline{C} \end{array}
德摩根律配项分配律交换、结合吸收、互补F=A⋅B+A⋅B⋅B⋅C+B⋅CF=A⋅B+A⋅B+B⋅C+B⋅CF=A⋅B+A⋅B(C+C)+B⋅C(A+A)+B⋅CF=A⋅B+A⋅B⋅C+A⋅B⋅C+B⋅C⋅A+B⋅C⋅A+B⋅CF=A⋅B+A⋅B⋅C+A⋅C(B+B)+A⋅B⋅C+B⋅CF=A⋅B+A⋅C+B⋅C
3.2 用卡诺图化简逻辑函数
步骤:
- 画出卡诺图
- 画圈得到合并后的乘积项
- 写出最简“与或”表达式
画卡诺图对于我们来说轻而易举,写表达式也是易如反掌,那么最大的问题就来到了——如何画圈?
首先,为了保证卡诺图中逻辑相邻和几何相邻的一致性
逻辑相邻?好熟悉的名字啊,没错,就是你想的——格雷码!
举个例子:对于双变量AB,我们不采用二进制顺序00 01 10 11,而是采用格雷码顺序00 01 11 10
于是他就长下面这个样子:
我们根据真值表向卡诺图中填入0和1之后(为了方便,通常不用填入0),就可以开始圈啦!
(大前提:不能斜着圈)
下面我给出几种常见类型
-
要做到不漏,所有的1必须被圈中
-
不要去圈冗余圈
-
注意卡诺图的几何相邻性
-
如果存在无关项(don’t care),一般填入X,其取值视情况而定
有uu估计要问了?“笛哥,为啥不圈底下那俩X嘞?”
那是因为,咱们要去找他的最简“与或”表达式!我让那俩X=0,不就可以不管了呗!
最简!!!