分享

代码只是一串字符,为什么能通过指令驱动机器

 我爱你文摘 2019-12-30

一切最终都是电信号,电信号的输入、转换、输出。信息可以用二进制表示,二进制信息的存储可以是光存储、磁存储或电存储。二进制信息的布尔运算可以用开关电路实现,开关电路的逻辑元件可以是继电器、电子管或晶体管。

1 字符编码为二进制的0、1序列;

2 键盘、鼠标的输入(形成电信号,表示为字符或字符组合表示的指令);

3 数据(0、1序列)存储实现(磁极、光盘的坑、晶体管的开关来表示);

4 存储的数据读入内存和寄存器(电容+晶体管实现);

5 控制器读取内存中数据和指令(同样是是0、序列的组合),按指令产生控制信号;

6 运算器在控制信号的控制下执行运算(由加法器组合而成);

现代电脑绝大部分都是冯诺依曼机,冯诺依曼机基本特点就是“存储程序控制”概念。

存储可以是光存储、磁存储,最终转化为电存储(由晶体管实现),“写入内存”的动作,就是由外部的数据线、对电容进行充电或放电,从而完成写入 1 或 0 的数字数据。所以,字符串的代码最终实现为一串串的由电流通断表示的开关信号,组合后产生能控制的开关信号输出,最终实现为指令驱动机器。

存储实现

存储器的“单元”(Cell)是指用来存取资料的最小结构,如果含有一个晶体管(Transistor)与一个电容(Capacitor)则称为“1T1C”;如果含有一个晶体管(Transistor)与一个电阻(Resistor)则称为“1T1R”;如果含有一个二极体(Diode)与一个电阻(Resistor)则称为“1D1R”。

存储器的每个“单元”不一定只能储存 1 个位的资料,由于我们对存储器容量的要求越来越高,每个“单元”能储存的资料越来越多,依照每个“单元”能储存的资料位数又分为:单层单元(Single-Level Cell,SLC)、多层单元(Multi-Level Cell,MLC)、三层单元(Triple-Level Cell,TLC)、四层单元(Quad-Level Cell,QLC)等。

静态随机存取存储器(SRAM:Static RAM)以 6 个晶体管(MOS)来储存 1 个位(1bit)的资料,而且使用时“不需要”周期性地补充电源来保持记忆的内容,故称为“静态”(Static)。

SRAM 的构造较复杂(6 个晶体管储存 1 个位的资料),不使用电容所以存取速度较快,但是成本也较高,因此一般都制作成对容量要求较低但是对速度要求较高的存储器,例如:中央处理器(CPU)内建 256KB、512KB、1MB 的“快取存储器”(Cache memory),一般都是使用 SRAM。

动态随机存取存储器(DRAM:Dynamic RAM)以一个晶体管(MOS)加上一个电容(Capacitor)来储存一个位(1bit)的资料,而且使用时“需要”周期性地补充电源来保持记忆的内容,故称为“动态”(Dynamic)。

由于快取存储器(SRAM)与主存储器(SDRAM、DDR)是执行程序用来“暂时储存”程序与资料的地方,与处理器内的运算单位直接使用汇流排(Bus)连接,一般都是用“位”(bit)来计算容量;而辅助存储器是“永久储存”程序与资料的地方,由于一个位组(Byte)可以储存一个半型字,因此一般都是用“位组”(Byte)来计算容量。

代码只是一串字符,为什么能通过指令驱动机器

DRAM 构造较简单(一个晶体管加上一个电容),由于电容充电放电需要较长的时间造成存取速度较慢,但是成本也较低,因此一般制作成对容量要求较高但是对速度要求较低的存储器,例如:个人电脑主机板通常使用 1GB 以上的 DDR-SDRAM 就是属于一种 DRAM。由于处理器的速度越来越快,传统 DRAM 的速度已经无法满足要求,因此目前都改良成 SDRAM 或 DDR-SDRAM 等两种型式来使用。

布尔代数与全加器

在布尔代数里,X代表一个命题,x=0表示命题为假,x=1表示命题为真,香农发现,如用x表示一个由继电器和普通开关组成的电路,那么x=0就表示开关合上,x=1就表示开关打开;接着,又阐述了串联电路和并联电路与逻辑学中联言命题和选言命题的一致性。

代码只是一串字符,为什么能通过指令驱动机器
代码只是一串字符,为什么能通过指令驱动机器
代码只是一串字符,为什么能通过指令驱动机器

循环电路实现数据的电存储(SR触发器):

代码只是一串字符,为什么能通过指令驱动机器

-End-

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多