根据真值表写出逻辑函数的原理是什么?
发布网友
发布时间:2022-05-12 15:36
我来回答
共1个回答
热心网友
时间:2023-10-12 01:28
上述概念都是【逻辑代数】中的内容。【逻辑代数】是【数学】与【逻辑学】相结合的产物。【逻辑代数】中的内容,都可以在其中找到原始的解释:
1、数学解释:
【逻辑函数】是数学函数的一种,表示的是【逻辑变量】——取值范围为{0,1}的变量——间的对应关系。这种关系是通过【逻辑运算】建立的,所以,【逻辑函数】的一切性质,都是由【逻辑变量】和【逻辑运算】决定的。先说说【逻辑运算】:
①:【与——逻辑乘】:Y=X1·X2·……·Xk;(k个逻辑变量连乘)
表示:Y=1,当且仅当 X1、X2、……、Xk【全部等于1】;
②:【或——逻辑加】:Y=X1+X2+……+Xk;(k个逻辑变量连加)
表示:Y=1,当且仅当 X1、X2、……、Xk【至少一个等于1】;
③:【非——逻辑非】:Y=X′;(我用X′表示:X的非)
表示:Y=1,当且仅当 X【等于0】;
逻辑函数的通用表达式为:
Y=f(X1,X2,……,Xk);——k元逻辑函数;
在【真值表】中,k元逻辑函数必然恰好具有:2^k行。我们用:
v=(x1,x2,……,xk)
来表示真值表某一行中全部自变量的【赋值组合】。 那么该行对应的函数值可记作:
Y=f(v);
我们知道,自变量的【赋值组合】唯一确定了Y的取值。根据每行中Y的不同取值(0或1),可将每行所对应的【赋值组合】分为两组:
A组:Y=1;记作:A={a1,a2,……,am};——设共有m行;
B组:Y=0;记作:B={b1,b2,……,bn};——设共有n行;
显然:m+n=2^k;并且:
Y=f(a1)=f(a2)=……=f(am)=1;
Y=f(b1)=f(b2)=……=f(bn)=0;
另外,因为每个【赋值组合】都要取遍所有自变量,那么,每行的【赋值组合】必然可以对应一个【最小项】,构造规则如下:
①:如果Xi=1;则使用【正变量】——Xi;
②:如果Xi=0;则使用【反变量】——Xi′;
根据【逻辑乘】和【逻辑非】的运算性质,可知:使用此方法构造最小项,必然具有以下性质:
【1】可以构造出k个变量的全部【最小项】,它们恰好分别对应【真值表】中的每一行;
【2】每个【赋值组合】,恰好也是【唯一的】可以使相应【最小项】等于1的【赋值组合】;
根据【2】所确定的【赋值组合】与【最小项】间的一一对应关系,我们将该【逻辑函数】的所有的【最小项】也分为两组:
M={A1,A2,……,Am};
N={B1,B2,……,Bn};
其中的每个元素都是一个个的【最小项】;并且,我们规定M、N中元素的下标,与A、B中所对应的元素的下标是一致的。
现在,我们可以确定这样一种关系了:
Y=f(v)=1;
当且仅当:v∈A;
当且仅当:存在ai=v∈A;(i是一个不确定的下标)
当且仅当:Ai=1;显然:Ai∈M;
当且仅当:所有Aj=Bl=0;其中:Aj∈M且j≠i;Bl∈N;(j和l都是下标)
这也就是说:
Y=1;当且仅当:M中【至少(事实上,也是恰好)有1个】最小项也等于1。
再根据【逻辑加】的运算性质,可知,Y必然满足以下等式:
Y=A1+A2+……Am;
这,就是该【逻辑函数】的【标准与或式】。也就是根据【真值表】直接写出来的【逻辑表达式】。