第二章 寄存器基础概念

Posted agent33

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二章 寄存器基础概念相关的知识,希望对你有一定的参考价值。

第二章 寄存器

1.一个典型的CPU由运算器,控制器,寄存器等器件组成。

内部总线实现CPU内部各个器件之间的联系。

外部总线实现CPU和主板上其它器件的联系。

 

2.8086Intel系列中16位微处理器,地址总线20位。

80861416位寄存器:AXBXCXDX,是通用寄存器SIDIBPSP,是基址和变址寄存器CSSSDSES,是段寄存器IPFLAGS是指令指针和标志寄存器。

3.通用寄存器:一个CPU有多个寄存器,用来存放十六位一般性数据

下面以AX为例

 

4.汇编指令

1.move xxnum   将num送入寄存器xx

2.add xxnum   将寄存器xx的数值加上num

3.move xxyy   将寄存器yy的数值送入寄存器xx

4.add xxyy   将寄存器xxyy的值相加并存在xx中;

5.所有的内存单元构成的存储空间是一个一维的线性空间。每一个内存单元在这个空间中都有唯一的地址,这个唯一的地址称为物理地址。8086CPU给出物理地址的方法CPU中的相关部件提供两个16位的地址,一个称为段地址,另一个称为偏移地址; 段地址和偏移地址通过内部总线送入一个称为地址加法器的部件; 地址加法器将两个16位地址合成为一个20位的物理地址; 地址加法器通过内部总线将20位物理地址送入输入输出控制电路; 输入输出控制电路将20位物理地址送上地址总线; 20位物理地址被地址总线传送到存储器。 另外地址加法器采用物理地址=段地址*16+偏移地址。

注意(1) CPU从何处执行指令是由CS和IP中的内容决定的。

(2) 程序员可以通过改变CS、IP中的内容来控制CPU执行目标指令。

(3) IP和CS值的修改不能通过mov指令实现,需借助转移指令 (如jmp, call等)。

6.计算机的工作过程

1步: CPU基于CS:IP,计算出物理地址,然后到相应的内存单元读取指令,送到指令缓冲区。

2步: CPU自动修改IP的值,IP = IP + 所读取指令的长度,从而为下一条指令读取做准备;

3步: 执行指令。 转第1步,重复此过程。

8086CPU 加电启动或复位后( 即 CPU刚开始工作时)CS和IP被设置为CS=FFFFH,IP=0000H。

: 在8086PC机刚启动时,CPU从内存FFFF0H单元中读取开机后执行的第一条指令。

7.CS和IP的概念:CS: 代码段段寄存器,用于存放代码段的「段地址」

IP:  指令指针寄存器,用于存放CPU将要读取的指令在代码段中的偏移地址。

CS:IP对应的物理地址存放的是CPU将要读取的指令。

(CS) × 16 + (IP)  → 指令的物理地址

8.修改CS和IP的指令jmp:(1) 同时修改CS、IP的内容  jmp段地址: 偏移地址 用指令中给出的段地址修改CS,偏移地址修改IP。(2) 只修改IP的内容:jmp  某一合法寄存器

用指令中寄存器的值修改IP。

 

以上是关于第二章 寄存器基础概念的主要内容,如果未能解决你的问题,请参考以下文章

多线程编程之基础概念

计算机网络 王道考研2021 第二章:物理层 -- 物理层基本概念数据通信基础知识

2017.06.29数据挖掘基础概念第二.三章

计算机网络(谢希仁 第七版) 第二章(物理层)-- 2.1 物理层的基本概念 & 2.2 数据通信的基础知识(信道的基本概念信道极限容量(实际的信道频率范围信噪比))

EnjoyingSoft之Mule ESB基础系列第二篇:Mule ESB基本概念

图像处理基础知识