动态线条
动态线条end

x86汇编基础

开关原理(用电来表示数字)

打开开关(有电流通过):代表1

关闭开关(无电流通过):代表0

那么同理,利用多根导线上的开关,进行开合操作,一根导线上的开关能表示一个0或1,多个导线放在一起,就能表示类似0011010的二进制数。而我们就能将这串二进制数值看作是一条命令,或者是一个需要操作的数据。

寄存器

触发器:有一个输入和输出,能将输入保存起来(锁存),并且能在输出位置看到输出的内容

1)根据导线的开关,来决定当前输入的是0或1

2)按下锁存开关,锁存命令将输入的信息存入触发器中

3)触发器输出位置可以观察到触发器的内容

由上述操作可以看出,触发器能够保存一位的0或1。因此,利用多个触发器,来构成一个寄存器。(如八位寄存器:八个触发器构成)

加法器

第一代:

1)由多根导线完成数字的输入(如:八根导线表示一个数字),一共输入两次(需要十六跟导线)

2)输入的数值在加法器中运算,并输出

image-20220117103013356

第二代:

由输入导线与寄存器构成(导线完成数据的输入,寄存器存储数据)

1)输入第一个数据进行预置操作:寄存器中存入了第一个数值

2)输入第二个数据进行相加操作:寄存器中原有数据与输入数据相加,并将结果保存在寄存器中

image-20220117103440456

第三代:

在第二代基础上添加了更多的算数运算操作

image-20220117104418295

运算 2 + 4 * 3

1)将4预置到寄存器中

2)输入3,开启乘法运算,并将结果存入寄存器

3)输入2,开启加法运算,将结果存入寄存器

综上:数据的运算顺序需要人为的定义,如果按照书写顺序进行输入运算的话,结果可能与预设中不同。

第四代:

为了记录更多的临时数据,因此添加了更多的寄存器,同时电路设计也变得更加复杂,通过逻辑开关,来对寄存器1和寄存器2进行数字运算。因此为了进行运算的判断,需要增加更多的逻辑控制开关。

image-20220117110551387

第五代:

由于,每个逻辑控制开关只有两种状态。因此,将四代中每一种逻辑开关的 关状态 分配一个编号(如:加法运算 00000001),利用多根导线发送不同状态的电流,来确定运算器执行何种指令。如果按照第四代的设计理念,8种操作就需要8根逻辑开关导线。但是如果将其状态进行标注,8根导线能够标注255种状态,那么就能达到执行255种指令,效果不言而喻。

image-20220117111403715

内存

处理器中的寄存器无法大量设置,因此数据需要临时存储在一个其他空间,该空间就是内存空间。

内存:是由大量的内存单元堆叠而成,可用于存储临时数据。每一个内存单元都被独立编号,该编号又被称作地址编号。

地址线:可以理解为多根导线构成,通过开合,组成不同的01数据。地址线个数决定了寻址范围,如果有八根地址线,那么寻址范围就是0至28-1

image-20220117141300132

处理器内部大体构成图

image-20220117142714636

处理器的位数主要是讲处理器内部的寄存器与算数逻辑部件,四位处理器具有四位的寄存器与四位的算数逻辑单元,八位处理器具有八位的寄存器与八位的算数逻辑单元,十六位处理器与三十二位、六十四位处理器同理。

posted @ 2022-01-20 10:43  v1v1v1  阅读(83)  评论(0)    收藏  举报