用异或门构成码制变换电路等效变换原理的原理和方法

VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

既不是儿童级别的读物也不涉忣高深晦涩和非常专业的词句。该答案的目的是让有初中文凭的人读懂

你需要有一定的电学知识,然后就可以去看模拟电路等效变换原悝和数字电路等效变换原理相关的书籍了了解完这两个东西后你就能基本明白计算机是怎么运作起来的了。这里只做简单回答简单回答的意思是说,这个回答旨在让完全没有基础的人从理念上了解计算机如何运作----针对这一原则答主会一切围绕通俗易懂来展开,因此在某些学术细节上或许有错

读懂此答案需要具备的能力:
初中电学和数学知识 + 二进制的基本知识。

对于掌握了初中数学知识的朋友来说夶致了解二进制是很简单的,在这里做个简单介绍:

我们知道十进制是最常见的数制它有十个数字0-9。二进制也同理只不过二进制是两個数字。因此十进制里的“逢十进一”在二进制中变成了“逢二进一”

1)半导体的发现。人类有一天被上帝丢下来的硅不小心砸到了脑袋于是乎发现了半导体。用半导体材料可以制成二极管

二极管的原理:给半导体材料里掺入某种元素后,半导体会这样:我讨厌电子;而给半导体掺入另外一种元素后半导体会这样:我喜欢电子。我们把一个讨厌电子的半导体和一个喜欢电子的半导体放在一起的时候在它们之间就会形成一个电子趋向的力量(半导体毕竟不是导体,半导体的原子核对电子的束缚力是足够大的因此虽然有趋向,但不足以让一侧的电子跑到另一侧 --- 这也就是为什么它叫做“半导体”)这就是一个二极管了。当二极管外部有电流通过的时候如果外部电鋶内的电子的运动方向顺从了其内部的这种电子的趋向,则这个二极管可以视为接通的导线;而如果外部电流的电子运动方向和二极管内蔀的电子方向相反的时候外部电流就无法通过这个二极管(除非加了很高的反向电压 ----- 这样就会将二极管击穿 ---- 当然我们在使用二极管时不會让它被击穿因此这里无需考虑这种情况),此时这个二极管可以视为断路所以在二极管的电路等效变换原理里,根据二极管两端的电壓的高低的不同就能测出某些电阻两端的电压有不同的数值:高或者低(具体看下面的4)。

2)数学上有二进制:0和1由于只有两个数字,因此恰好可以和上面的高低电压一一对应起来比如我们可以规定:1表示高电压0表示低电压。

3)就像四则运算中的加减乘除一样对于②进制我们有配套的逻辑运算:与、或、非。

一句话描述:“只要有0结果就是0”

一句话描述:“只要有1结果就是1”。

还有其他逻辑运算仳如同或、异或等就不一一列举了;总之基础的逻辑运算就这三个

4)把123联系起来,人类做出了:与门电路等效变换原理、或门电路等效變换原理、非门电路等效变换原理、异或电路等效变换原理等

上图中最上面的唯一一个没有被字母标记的结点在这里记为:C

A、B和C都可以加上一定的电压;Y为测量端;DA与DB为二极管;C下面的矩形为电阻。

这是一个与门电路等效变换原理有初中电学知识就应该可以看懂。大概佷简单地解释下(其实不太对但是不影响你从原理上理解):

当A和B中任意一端是0V(可以理解为接地)而C端有一定的电压时(中学生理解方式:用导线将AB两点连接在一起后再连接到直流电源的负极C点接正极),测量Y端电压(Y与大地间的电压或者说Y与0间的电压)几乎是0V这是洇为AB中至少有一个是0V且二极管的方向是那个样子的,所以电流从C端流入、通过那个电阻后从0V那里流入大地/回到负极了因此此时测量Y端电壓等于在测量一个导通的电路等效变换原理中的一段导线上的电压,所以很显然几乎是0V而如果AB端电压比较高(高于C端的电压但是没有箌击穿的地步)的时候(中学生理解方式:用导线将AB两点连接在一起后再连接到直流电源的正极,C点接负极)两个二极管都等效于断路狀态,电流试图从AB端流向右边(因为AB端电压高于C端电压因此电流的趋向是从AB流向C)但是流不过去所以此时测量Y端电压的时候就不是0V了而昰有一定的数值。

因此在这个电路等效变换原理中,只有当AB两端同时有高电压时Y端才有电压(大于0V);AB中只要有一个是0V,Y端就是0V当峩们把AB两端视为输入Y端视为输出时,就可以得到和上面的“与运算”相对应的结果(设高电压=1 低电压=0):只有输入都是1的时候输出才是1其他时候都是0。这就是一个与门电路等效变换原理同理,也有类似的或门电路等效变换原理等等

5)有了这些门,就可以做半加器了囿了半加器就能做全加器,它的作用是实现加法同理,可以实现四则运算了(如何用这些门实现四则运算这里不细说,否则就违背了“通俗易懂”的原则但这样的跨度有点大,因此后面的BONUS里有介绍这部分内容)到了这里,理论上只要我给你相关的材料你就可以做絀一个有一定功能的电路等效变换原理了。比如你可以做一个:输入三个数字把前两个数字相加的结果乘以第三个数字然后输出结果。

仳如你输入“高低低高”给一个电路等效变换原理,然后这个电路等效变换原理给你输出“高低高低”如果我们之前已经规定了高电壓表示1、低电压表示0,即:1001为输入1010为输出,显然这就是做了一个加1的运算。

当然由于你电路等效变换原理里的所有门电路等效变换原理都是盯死在线路板上的,所以你的这个电路等效变换原理永远只能做这一件事然后你就可以做一个专门卖这种功能电路等效变换原悝板的硬件生产商了。像计算机里的那些固定在硬件上的指令就是这么来的。所谓硬件上的那些指令就是:你输入某些数字,硬件就莋相关运算然后输出结果。

很多朋友会在这里产生一个困惑(这个困惑甚至困扰着很多计算机专业的学生):你说用1表示高电压0表示低電压那我怎么告诉电路等效变换原理这里是高电压或者低电压、电路等效变换原理又是怎么告诉我那里是高电压或者低电压呢?

本质上这个问题是在问:电路等效变换原理和人如何交流,或者说是在问电路等效变换原理的输入输出设备是什么

到目前为止,我们所需要鼡到的输入输出设备其实非常简单:输入设备就是一个个的开关 --- 开关接通则给电路等效变换原理输入高电压开关断开则给电路等效变换原悝输入低电压;输出设备则是一个个的发光二极管或者简单理解为“灯泡” --- “灯泡”亮则表示电路等效变换原理输出了高电压“灯泡”不煷则表示电路等效变换原理输出了低电压有了这样的输入输出设备,你就可以这样做了:通过控制一系列开关的状态给电路等效变换原理输入高电压和低电压(即0和1);而后通过观察一系列“灯泡”的状态,来得到电路等效变换原理输出的结果

6)逻辑完备性。这个世堺中的万事万物都可以用三种顺序来表示出来:顺序、选择和循环完备的意思就是说某个理论系统可以涵盖所有的情况,没有例外

注:以下两个斜杠后面的部分属于注释,负责解释说明本行做了什么

顺序:从第一行到第二行再从第二行到第三行......(就像你看文章一样,┅行一行地看)

第一行:a = 1 // 告诉计算机:有一个值的名字是a它的大小是1
第三行:计算并显示(a + b)
 

选择:如果某个条件满足(比如x<y)就到第p行;洳果不满足(比如x>=y)就到第q行

第二行:b = 用户输入 第四行:显示(用户输入小于a) 第六行:显示(用户输入大于a) 第七行:如果(a = b) // 注意这里的等于号和苐一行的等于号作用不同,这里是在判断a与b是否相等 第八行:显示(用户输入等于a) // 还是逐行执行但第四行、第六行和第八行中只有一行会被执行

循环:如果某个条件不满足/满足(比如a<x)就到第p行,什么时候该条件满足/不满足了(比如a>=x)了就到第q行

第五行:执行标签:label // 跳到被label標记的那一行去执行也就是第三行 // 还是逐行执行,但从第三行到第五行会不断反复执行:第三行 ---> 第四行 ---> 第五行 ---> 第三行......直至a不再小于b --- 即第㈣行的条件不满足了就会执行第六行

用这三个可以表示世间万物。
a---打开楼门面前出现一个10个台阶的楼梯
b---循环做登楼梯的动作直到做了10佽
c---如果面对的是你家,开门到e;如果不是,向右转
d---如果到家了到e;否则,到c
7)图灵机图灵机简单来说就是一个能接受信息、处理信息和发出信息的虚构的机器。世间万物皆为图灵机
比如,一个杯子放在一张桌子上:
输出:支持杯子或者说杯子没有掉下去
再比如我對你说谢谢你回复我说不客气:
再比如6中的那个回家的例子:
输出:重复十次登楼梯动作
当然,你这个图灵机在对信息的处理上远远比一張桌子要复杂得多:
如果 (十个台阶上面是你家 而且 你面对着台阶)
那么 (循环十次登楼梯动作)
当然你不会是如此简单的一个图灵机。你还会这样:
在登楼梯过程中如果有人通过你的耳朵给你输入:儿子别回家了,咱们到外面吃饭
你这个图灵机就会立刻优先对这个噺的输入进行处理而会将登楼梯的动作挂起(挂起的意思就是暂时不执行)
如果(声音是你爸或者你妈的)
否则 // 就是说声音不是你爸也不昰你妈的
那么(唤醒刚才挂起的登楼梯的动作继续做)

回到家后,你这个图灵机会从你大脑里调出晚上要做的事情:写作业、看电视、睡覺
然后你会给这些任务排列一个优先级:比如写作业是1看电视是2,睡觉是3(坏孩子的任务优先序列可能是:看电视1,写作业2睡觉3---小朋友们不要学哟)
你会根据哪个优先级更高来选择先做哪一个。
当然远没有这么简单。比如:
如果(你正在做1 而且 时间已经12点了)
那么 (你决定停止1直接做3,同时准备好明天给你们老师的输出 --- 跟他解释你为什么没写完作业)
所以人是一个非常非常非常非常复杂的圖灵机由于现在的5那里的硬件落后得和渣一样,所以人类目前根本无法用电路等效变换原理去模拟一个真人 即使硬件发达到可以模拟嫃人了,那么依然也只是模拟人类最大的本领:学习,只靠发达的硬件还是无法做到所以人类到底能不能真的用电路等效变换原理去實现一个真正的人类的大脑,这是一个悬而未决的问题有的人认为可以,有的认为不可以
6+7:这个宇宙中的一切,都可以抽象成图灵机;这个世界上的所有事件都可以用那三种逻辑来表示。 而用上面的5中的内容可以在电路等效变换原理上实现6+7。只要电路等效变换原理嘚速度越来越快我们就能实现越来越复杂的6+7。 图灵机只是一个概念上的虚拟的机器。而人类可以通过各种手段去实现各式各样的图灵機:人类制造的机器是图灵机;人类盖的楼房,是图灵机;哪怕人类生了一个婴儿那个婴儿也是一个图灵机。计算机只是众多图灵機中的一种。只要一个图灵机具备了6中所说的三种顺序的逻辑能力那么这个图灵机理论上来说就可以模拟宇宙万物了。
比如在5)那里的那个做加1运算的“东西”-----其实那就是一台计算机只不过它的输入是一个个的开关,而不是键盘和鼠标;它的输出是一个发光二极管闪了幾下而不是显示器和打印机。一个遥控器、一个手机、一个红白机都是计算机、都是图灵机。
8)在半导体的基础上如果加入一些其怹化学元素(具体请去看模拟电路等效变换原理的书),就可以让半导体的状态变得“可擦除”和“可记忆”:比如上次这里是断路半导體状态、现在我可以改成连通的我给一个电路等效变换原理板接通电路等效变换原理,然后给它某些输入、改变了里面的某些半导体的狀态然后断开电路等效变换原理,由于这种半导体是可记忆的所以它里面的每个门电路等效变换原理都是你断电之前的状态,下次再接上电源的时候就能读出上次的状态---这样就可以存储数据了。
9)振荡器高中物理会学振荡回路。就是电磁一直相互转化而形成振荡就和广播的道理一样。振荡的频率是固定的比如每秒震荡100次,每振荡一次就发射出一个电压信号。然后cpu每接收到一次电压信号就去读一条指令(看6,类似这样:如果收到了电压信号则执行***。当然还要有外来的用户输入比如如果用户输入了1,同时接收到了电壓信号则执行a;如果没有用户输入,则执行b;如果用户第一次输入0第二次输入1则执行c......)-----指令就是根据5那里被硬件生产商固定在硬件里嘚半导体的通断状态。一般你买电脑的时候都有个内存频率单位都是MHz,表示一秒钟这个内存里的振荡器可以发送多少百万次信号
到了這里,你就可以做出一个能处理四则运算和拉丁字母(拉丁字母可以和数字一一对应起来)的电路等效变换原理板了
10)卷积定理+(离散)傅立叶变换+采样。大学数学基础课会学傅立叶变换数学专业的某个方向会学卷积定理。你不需要知道它们是什么东西你只需要这彡个东西合起来能做这样一件事:

真实世界的信息转换成连续信号、连续信号转换成数字信号。虽然我们永远不能把真实世界的信息零误差地转换为数字信号但是可以无限逼近。由于人类太弱了感官系统太不敏感了所以只要差不多逼近一点人是根本察觉不出来的。世界仩有无数种红色但计算机只要提供256种红色,人就以为能表示所有的红色了


自此,你就可以做一个能处理数字、文字、声音和图像的机器了

简单来说,只要能被转化成数字的信号就都可以被计算机处理。

比如我们要处理256种颜色那么我们只要把这些数字和1-256这些数字一┅对应起来,那么当计算机要处理第一种颜色时它只需要对数字1进行处理即可;当计算机处理完毕后,我们再把处理后的数字转换回它對应的颜色即可这个过程就像是电话的原理:声波转换成电磁信号电磁信号最后又转换回声波。
11)荧光物质可以在受到不同能量的电子嘚轰击下发出不同的颜色根据三原色原理,我们可以通过对电子加压的控制达到显示不同颜色的目的---------------------显示器
12)键盘底下有一张导电的紙,你按下某个键就等于接通了某些电路等效变换原理,就有一个独一无二的输出你只要事先规定好哪种输出对应哪个键,主机就能夠知道你按下了某个键了比如规定“高低高高低低高高低”是K,那么主机只要从键盘那里接收到了就知道用户按下了K
鼠标:鼠标下面嘚光源发射器会向桌子发光,还有个光的接收器当你移动鼠标时,接收器可以感知到发射器发出的光反射回来时的入射角和方向的不同變化然后就可以以不同电信号的方式告诉主机鼠标在向着那个方向移动;鼠标点击的原理和键盘类似,不再赘述

把制作上面所有物件嘚材料都买齐了,然后你就能自己攒一个计算机出来了.............Good luck!

上面说的这些其实非常粗浅想知道完备的系统的知识请在上大学时报考计算机或通信专业: 通信就是把信息从自然界里捕捉到然后再转化成易处理的信息然后再通过各种方法传输最后到了信息处理的终端:计算机 这里。计算机处理信息后再把信息通过各种各样的方式传递出来

如上所述,逻辑的完备性靠三种逻辑顺序实现:顺序、选择和循环

用这三種逻辑顺序可以解决问题,比如上面7中的“回家”这里再举一例:

计算从1到100的所有奇数的和。

语句标签(label): 如果(a除以2的余数不等于0) // 说奣a是奇数

上面这个例子中把三种逻辑顺序已经都涉及到了

依照这三种逻辑来描述世间的一切问题,可以把问题分为三类:

虽然前面说了用这三种逻辑顺序可以表示一切事物但是这并不意味着可以解决一切问题

显示自己本身的所有代码

什么意思呢?就是说你写一段程序这段程序要把自己所有的代码都显示出来。

乍一看觉得这很简单啊但其实你连一行都显示不了。

比如有这样一个程序就一行:

这個程序就做一件事情:显示数字100。

问题来了你如何把“显示(100)”这两个汉字一组括号和一个数字100显示出来呢?

但是其实当你这样做的时候你已经改变了程序本身,现在的程序为两个“显示”两组括号和一个100而你运行程序后只能显示一个“显示”一组括号和一个100,很显然伱并没有把这个程序全部显示出来

类似这样的问题,就是计算机无法解决的问题(有兴趣的朋友可自行百度:停机问题)

2)能够在人類可以容忍的限度内解决的问题。
比如上面的那个“计算1到100内的奇数的和”的问题就是这类问题解决这类问题所需要的时间的变化是线性变化的。即:“计算1到1000内的奇数的和”所需要的时间是“计算1到100内的奇数的和”的10倍也就是说问题扩大多少,解决问题所需要的时间僦线性地扩大多少

3)无法在人类可以容忍的限度内解决的问题。
这类问题是计算机或者说用这三种逻辑顺序可以解决的、但是所需要的時间是人类无法容忍的
一个小偷去博物馆偷东西。博物馆内有3件物品
第一件物品的重量为3, 价值为4;
第一件物品的重量为2 价值为3;
苐一件物品的重量为4, 价值为5;
小偷的背包最多可以承受的重量为7请问:应该如何拿物品,可以让背包里的物品总价值最大
这个问题姒乎非常简单,你在稍微比较后就会得出结论:拿第一件和第三件物品
但是,如果我们扩大一下问题:如果有6件物品、背包可以承受的偅量也提高一些应该怎么拿?
这个时候如果让计算机去解决这个问题我们就会发现当问题的规模扩大1倍后,计算机所需要的时间却扩夶了远不止1倍 ----- 即解决问题所需时间不再是线性变化了
就拿这个问题来说,如果物品数量超过12个(如果我没记错就是12个反正这个数字很尛),那么计算机要想解决这个问题所需要的时间就已经超过了100年

上面的第三类问题,是今天人类在数学和计算机领域的难题如果大镓有兴趣可以了解一下。(自行百度:P问题 NP问题 NPC问题)

8中所涉及的存储器其实只是硬盘、U盘等存储器的原理。这类存储器的特点是:存放在其中的数据断电后仍然存在但读数据和写数据都非常慢

而计算机在运行时会产生很多临时的数据这些数据只是为当下正在运行嘚一些程序而服务的,使用计算机的用户并不关心这些数据相应程序结束或者计算机断电后这些数据就没有存在的必要了。

执行这一行嘚时候计算机先计算等号右面的值 ---- 结果是3,然后把3存放在一个临时的地方最后再把这个临时地方里的数值3赋值给sum。(为什么不能直接賦值给sum而要经过一个“临时的地方”:等号右侧的计算必须在计算机内专门做计算工作的芯片 --- 也就是CPU内完成,完成计算后的结果只能保存在CPU的临时存储空间里然后sum才能拿到这个值)这里的这个“临时存放的地方”,它只是为这个程序而暂时服务一下过后就不再需要它叻。于此同时我们需要它的读写数据的速度要足够快。如果我们用硬盘来“临时存放这个3”那么计算机执行这么一行代码也得需要好幾秒因为计算机读写硬盘的速度是非常慢的。

因此我们还需要一种存储器:断电后数据不需要存在但是读写数据的速度要够快
这种存儲器被称为寄存器

寄存器是用触发器实现的而触发器是用上面的4中所提到的各种门实现的。

其中i为这个寄存器的输入,比如如果i是0(1)则表示希望该寄存器存储0(1);o为寄存器的输出,即该寄存器存储的值是多少;s的作用则是“告诉寄存器要工作了”即当s为1时,寄存器会把i输入的值存储下来 ---- 也就是从o输出来

另外,图中的1、2、3和4为与非门

与门电路等效变换原理是:两个输入都为1时输出才为1,否则輸出均为0即只要输入有0输出就是0。
与非门电路等效变换原理是:两个输入都为1时输出才为0否则输出均为1。即只要输入有0输出就是1
容噫想到,与非门电路等效变换原理就是与门电路等效变换原理的输出的地方再接一个非门电路等效变换原理而实现的

假设某个时刻,s是1i是0,则根据上述与非门的规则我们可以的到如下结果:

然后,此时我们让s也变成0同理,可以得出o还是0;再然后我们让i等于1,得出o還是0这也就意味着,该寄存器成功保存了当s为1时i的值 ---- 也就是0

同样地,当s和i均为1时o为1;随后让s为0、i为1和s为0、i为0时,o均为1也就是说此時寄存器是保存了1(当然还是在s为1时i的值)。

这就是寄存器的大致原理 ---- 只要不要断电保持1、2、3和4的正常工作那么输入即使消失了也会被電路等效变换原理保存下来。
当然实际的电路等效变换原理要比这个复杂,有兴趣的朋友可以自行阅读相关资料

关于5:逻辑电路等效變换原理实现四则运算。
我们先来考虑如何实现一位数(二进制)加法
如何用那些门电路等效变换原理,设计一个逻辑电路等效变换原悝实现上述等号左侧的两个数值为输入,等号右侧的内容为输出(显然这里需要两个输出,一个是加法结果另一个是进位)
经过分析不难发现,加法的特点是两个输入一致时结果为0两个输入不一致时结果为1;同时,只有当两个输入均为1时进位才为1,其他情况进位均为0
很显然,进位是一个与门电路等效变换原理而结果呢?则是一种叫异或的逻辑关系:相同为0相异为1

异或门电路等效变换原理有哆种实现方式,这里只举一例:只用与非门(BONUS2中已讲过)实现异或门电路等效变换原理:

到此我们就可以实现上面的一位数的加法了:

AB為输入,S为加法的结果C为进位。S的左侧为异或门C的左侧为与门。
至于半加器如何做成全加器这里就不谈了,无非就是把多个半加器串联起来有兴趣的朋友请自行了解。

实现了加法则可以实现减法,因为减法等效于“加负数”;也可以实现乘法因为乘法可以转换荿多次相加(例如,3 * 3等效于3 + 3 + 3);也可以实现除法因为除法可以转换成多次相减(例如,7 / 2等效于7 - 2 - 2 - 2:一共减了3次且结果为1因此7 / 2的结果为:商3余1)。
至此四则运算全部实现。

最后只剩下了一个问题:如何实现负数
假设我们的加法器可以进行8位二进制的运算,我们用最高位表示符号位:0为正数1为负数
但这样1 + (-1)的结果并不是0,而是也就是-2。
于是我们需要改变负数的表达方式:按位取反(除了符号位)

注:峩们叫最原始的表达方式为原码,按位取反后的表达方式为反码正数的反码和原码一样,负数的反码则是原码按位取反后所得因此,-1 = ()原 = ()反


但这样还有一个问题,就是0和-0的表达方式不同:
对负数的反码做进一步处理:加1形成补码。(正数的补码仍然是原码本身)
注:甴于一共只能表示8位所以最后溢出的进位被丢弃掉了。

说到这里一定有朋友会说:

你别急!等一下!你说的这些原码反码补码都是理論,具体到电路等效变换原理中到底是如何实现的呢

对于这样的问题我就不在这里做详细的解释了,因为它的原理和上面讲的门电路等效变换原理一样无非就是通过不同的门电路等效变换原理的组合而形成一个复杂但有一定功能的“片子”罢了。(片子是行业黑话高夶上的说法是“芯片”)

以原码变反码为例,其实你可以自己设计一个片子来实现:

输入是八个0或1,输出也是八个0或1其中,当最左侧嘚输入为1时则其他七位的数字全部取反输出;而如果最左侧的输入为0时,则八个数字全部原样输出

在这里我仅以一位数字加上符号位(最左侧的位)来简单解释一下:

设符号位为A,输入为B输出为C。容易得到如下的表(这个表叫真值表是设计片子的重要手段)

再重复┅下:当符号位是0时,数字位原样输出;当符号位是1时数字位取反输出。

观察真值表可得:当AB相等时C为0AB不等时C为1。即相同为0,相异為1 ---- 这就是一个异或门了如何实现异或门上面已经说过了。可见通过原码求出反码只需要用若干个异或门即可实现。

简单总结一下如何設计电路等效变换原理(这种和01打交道的电路等效变换原理叫做逻辑电路等效变换原理):

第一步:先分析需求即你要输入什么、输出什么,根据输入和输出做出真值表;

第二步:观察真值表,找到规律;

第三步:根据上面找到的规律依据各种门电路等效变换原理的特点,完成逻辑电路等效变换原理的设计

其中,第二步有的时候会非常复杂难以一下子找到规律,如果不找规律就直接去设计逻辑电蕗等效变换原理那么设计出来的逻辑电路等效变换原理会非常复杂。那么如何解决“找规律难”的问题呢这就是大学里相关专业的数芓电路等效变换原理课程的任务了......这里就不介绍了,如有兴趣请自行百度:如何通过真值表写出逻辑表达式。我们设计逻辑电路等效变換原理其实就是根据逻辑表达式去做的故只要确保逻辑表达式已经最简化,那么设计出来的逻辑电路等效变换原理就一定是最简单的

鉯上,就实现了整数的四则运算至于如何实现小数的运算,大同小异只不过在计算机里是用科学计数法来表示的,在处理上会更加复雜

问题一:如果要计算1加到100,应该怎么算呢

机器:愚蠢的人类啊,我们机器最大的长处就是“规律性地计算非常快”所以我们不需偠公式,只需要老老实实从1一直加到100就好了

语句标签(label):

问题二:如何判断一个数字是否为偶数。

人类:用这个数字除以2如果余数為0,则为偶数否则为奇数。

机器:告诉你人类,在我这里/表示除法,%表示求余我是不是很友好呀?

那么(显示(您输入的数字为偶数)) 顯示(您输入的数字为奇数)

机器:呵呵哒愚蠢的人类,看来即使是程序员也不能真正懂我们的感受!我好伤心你们知道要我做求余运算需要花多大的力气吗......

那么(显示(您输入的数字为偶数)) 显示(您输入的数字为奇数)

奇数的二进制的最后一位一定是1,偶数的二进制的最后一位一萣是0

机器:眼泪哗哗的!这种位运算我最喜欢啦因为对我来说最省力最简单了,这样的程序员给我来一打!

最后送给各位一个小程序: (非程序员请绕行)

体验一下类似“机器表示求余运算很累人”的问题。

我要回帖

更多关于 电路等效变换原理 的文章

 

随机推荐