前言
关于这款游戏
-= 你能学到什么 =-
计算机里所有的电子元件都可以基于一种叫做“与非门”(NAND gate)的基本元件而实现。在本游戏中,你将会面对一系列挑战,在求解谜题的过程中,走出从基础逻辑门通向算术单元、存储器等复杂元件的道路,并沿着这条道路最终学习如何搭建完整的处理器架构。完成所有主线关卡后,你将对处理器架构、汇编语言和电子元件彼此之间的具体联系产生更加深刻的理解。你也会了解高级编程语言中常见的条件判断、循环、函数等概念是如何在汇编和硬件层面具体实现的。
假false 0
02、与非门(NOR)
本关我们可以了解与非门的性质,并作出真值表,了解真值表是什么东西。
概念
那么本关要求是作出 NAND(与非门)的真值表,而 NAND(与非门)是在 AND(与门)运算后对其取反(非)。
那么大家可以通过上图与、或、非的真值表来推导下图的与非门。
答案
03、非门(NOT)
这里我们可以理解为A与B的输出一致了,那么我们只有0 1这两种输入了,通过上面的真值表结果也就很明了了。
在进入下一关前让我们先了解一下逻辑代数的基本公式。
这个表了解了第一、二层没难度的
04、与门(AND)
根据基本公式可以知道 A与A的非的非 值为 A与A ,那么两值与非的非结果就是两值的与。
我们可以在逻辑上理解为与非门就是与门的基础上加上非门,反之亦然。
AND(与门)是全部变量输入都为1时才输出1,当有变量为0时输出0。
本关答案
05、或门(OR)
我们先了解一下德·摩根定律。
根据上图可知
OR <-> NOR AND <-> NAND是对输出取反可得,
而OR <-> NAND AND <-> NOR是对输入取反可得。
本关答案也就可以推导出来了。
OR 或门是全部变量输入都为0时才输出0,当有变量为1时就可以输出1。
或门是当有输入为1时就输出1
06、或非门(NOR)
即在或门输出上取非。
07、高电平
数字逻辑电路中高电平只输出1,低电平只输出0。
08、第二刻
本关要求只在第二刻输出1,其他为0,目的是引导我们通过输出来判断输入。
通过表可以理解 输入1为 1 时,且输入2 为 0 时 输出为1, 其他为0。
这里我们可以直接作出标准逻辑表达式,在这里我另外开了个帖子,大家可以跳转去看看,掌握这个方法对后面过关很有帮助。
我们也可以直接去推导,在图中我们发现唯有当输入1(这里开始叫做A)为1,输入2(这里开始叫做B)为0时,才输出1。
即if(A==1&&B==0) return true;
else return false;
我们看到判断的条件就是A与B的值满足,那么我们试着写出与的条件:
if(A==1&&B==1) return true;
else return false;
因为A与B都是bool型的[只有两种取值,0和1(false和true)],直接取反就是另外一个值,所以我们可以放一个与门,将 A 以及 B非 来作为与门的输入即可。
如有什么错误地方欢迎大家指出,或者还有什么更好解法也欢迎在评论区分享!
如果看不懂的话也欢迎大家在评论区提出问题(我把数制给跳了)
#免责声明#
①本站部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责。
②若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
③如果本站有侵犯、不妥之处的资源,请联系我们。将会第一时间解决!
④本站部分内容均由互联网收集整理,仅供大家参考、学习,不存在任何商业目的与商业用途。
⑤本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与任何商业和非法行为,请于24小时之内删除!