📅  最后修改于: 2023-12-03 15:28:41.006000             🧑  作者: Mango
这是一道2000年GATE计算机科学考试的问题,考察了计算机科学中的逻辑电路设计和Karnaugh图。问题如下:
问题
在Boole的代数中,将加法和乘法运算分别定义为$x+y=x : OR : y$和$xy=xy$,其中$OR$和乘法均采用$2$进制下的位运算。例如,$3+6=7, 36=2$。(注:这里的乘法不是通常的Boole代数的符号,而是对应着与门的操作)。
证明加法和乘法为交换律、结合律和分配律的。使用$3$变量Karnaugh图说明下述函数$F$和$G$可以分别用最小项和最大项表示:
$F(x,y,z)=(x+y)z$ $G(x,y,z)=x+(y*z)$
加法的交换律证明如下:
$x+y = y+x$
因为$x$和$y$的值只有$0$和$1$两种情况,所以可以列出如下的真值表:
| $x$ | $y$ | $x+y$ | $y+x$ | | --- | --- | ----- | ----- | | 0 | 0 | 0 | 0 | | 0 | 1 | 1 | 1 | | 1 | 0 | 1 | 1 | | 1 | 1 | 1 | 1 |
可以看到,$x+y$和$y+x$的结果完全相同,因此加法满足交换律。
乘法的交换律证明同理,结果为:$xy = yx$
加法的结合律证明如下:
$(x+y)+z = x+(y+z)$
同样可以列出真值表:
| $x$ | $y$ | $z$ | $x+y$ | $(x+y)+z$ | $y+z$ | $x+(y+z)$ | | --- | --- | --- | ----- | --------- | ----- | --------- | | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 0 | 0 | 1 | 0 | 1 | 1 | 1 | | 0 | 1 | 0 | 1 | 1 | 1 | 1 | | 0 | 1 | 1 | 1 | 1 | 1 | 1 | | 1 | 0 | 0 | 1 | 1 | 0 | 1 | | 1 | 0 | 1 | 1 | 1 | 1 | 1 | | 1 | 1 | 0 | 1 | 1 | 1 | 1 | | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
可以看到,$(x+y)+z$和$x+(y+z)$的结果完全相同,因此加法满足结合律。
乘法的结合律证明同理,结果为:$x*(yz) = (xy)*z$
加法的分配律证明如下:
$x*(y+z) = (xy)+(xz)$
同样可以列出真值表:
| $x$ | $y$ | $z$ | $y+z$ | $x*(y+z)$ | $xy$ | $xz$ | $(xy)+(xz)$ | | --- | --- | --- | ----- | --------- | ----- | ----- | -------------- | | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
可以看到,$x*(y+z)$和$(xy)+(xz)$的结果完全相同,因此加法满足分配律。
乘法的分配律证明同理,结果为:$x+(yz) = (x+y)(x+z)$
函数$F(x,y,z)=(x+y)z$可以用最小项表示为:
$F(x,y,z) = \sum m(1,2,4)$
可以用下列三变量Karnaugh图来表示:
| | yz | 00 | 01 | 11 | 10 | | --- | --- | --- | --- | --- | --- | | x | | 1 | 1 | 0 | 1 |
因此,$F(x,y,z)$的最小项表示为:$F(x,y,z) = \bar{x}\bar{y}z + \bar{x}y\bar{z} + x\bar{y}z$
函数$G(x,y,z)=x+(y*z)$可以用最大项表示为:
$G(x,y,z) = \prod M(0,1,3,4,5,6)$
可以用下列三变量Karnaugh图来表示:
| | yz | 00 | 01 | 11 | 10 | | --- | --- | --- | --- | --- | --- | | x | | 0 | 1 | 1 | 1 |
因此,$G(x,y,z)$的最大项表示为:$G(x,y,z) = (x+y+z)(x+y+\bar{z})(x+\bar{y}+z)(\bar{x}+y+z)(\bar{x}+y+\bar{z})(\bar{x}+\bar{y}+z)$
以上就是这道GATE CS 2000年考试中提出的问题14的完整解答。