计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能)

计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能),第1张

   (用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能)


https://m.toutiao.com/is/hSLAuum/ 


写了这么久的代码,第一次思考计算机是怎么认识自己写的代码并执行的

一个代码到底是怎么执行起来的?CPU内部到底是怎么工作的?

一、什么是二进制

大家都知道计算机是二进制,即 0 和 1,但计算机中的 0 和 1 到底是什么?

就是低电平和高电平的意思,0 代表低电平,1 代表高电平。比如 0.2V 是低电平的话,那么 5V 可能就是高电平了。一般两者都有一个阈值,当电压大于某个阈值时,即是高电平;当电平小于某个阈值时,即是低电平。计算机中的 0 和 1 是为了理解方便,给低/高电平取的别名。

同时两种称呼分别代表了数字电路和模拟电路。

数字电路是电路是以“0”和“1”及相应的逻辑符号来表示的,如下图:

计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能),第2张

模拟电路是电路中以电压高低和电流等参数来表示的,如下图所示:

计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能),第3张

可以看做建筑施工图和建筑实物图的关系:数字电路主要是表现其逻辑和功能,模拟电路是搞定采用什么材料什么方式来实现数字电路想要达到的结果!

高低电平如何实现的?

二、二极管

二极管是用半导体材料(硅、硒、锗等)制成的一种电子器件,具有单向导电性。

一个二极管的实物图:

计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能),第4张

逻辑电路图(即抽象的)

计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能),第5张

电流可以从正(+)极流向负(-)极,此时处于导通状态;但反过来却不行,此时处于截止状态。这就是单向导电性!

由于单向导电性,二极管就像是一个开关:

当处于导通状态时,开关闭合,两边电压大小一致,如正极 (+) 电压为 5.2V,那么负极 (-) 也为 5.2V。
当处于截止状态时,开关断开,两边电压大小不一致,如负极(-)为 5.2V,正极 (+) 电压为 0V。

三、逻辑运算与门电路

与门

通过二极管可以获得“0”和“1”,利用这个特性,我们可以制作一些有趣的电路,比如【与门】

计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能),第6张

通过小学 1 年级的知识,我们可以知道,此时 uA、uB 只要有一个是 0V,那 uY 就会和 0V 直接导通,导致 uY 也变成 0V。只有 uA、uB 都是 10V,uY 也才是10V。

并且可以把电路进行封装,不关心具体的二极管、电阻这些元器件,统一用 & 符号表示,就是上图右侧的描述。

这个装置成为【与门】,把有电压的地方计为 1,0V 电压的地方计为 0。至于具体几 V 电压,那不重要。

或门

再来分析一个或门:当输入中至少有一个“1”时,输出为“1”,若全为“0”,则输出“0”。
刚刚的与门展示的是两个输入,现在来看看四个输入!

计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能),第7张

当 A、B、C、D 四个输入都是输入低电平 0 时,四个二极管都处于截止状态,此时输出即为低电平 0。
当其中任意一个不为低电平时,若A为高电平 1,此时第一个二极管导通,输出即为 A 的电平,即高电平 1。

或门在数字电路中还可以表示为:

计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能),第8张

其他还有【非门】和【异或门】,跟这个都差不多。都可以用二极管或者三极管做出来,实际并不是用二极管三极管做的,因为它们太费电了。实际是用场效应管(也叫MOS管)做的。

运算离不开逻辑运算,也就是门电路,常见的逻辑运算有与、或、非、异或、同或。它们的真值表与逻辑符号如下。

计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能),第9张

四、加法器

然后我们就可以用门电路来做 CPU了。当然做 CPU 还是挺难的,我们先从简单的开始:加法器

对于一个简单的加法器而言有两个输入(A/B)和一个输出(Sum)和一个进位(C)。

输入 A

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 计算机基础计算机是怎么认识代码的(用8个触发器并联组合寄存器设定其4个以输入4个数据的数据引脚和4个指令引脚指令引脚用来选择执行的操作形成汇编功能)

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情