寄存器

在CPU中:

  • 运算器进行信息的处理
  • 寄存器进行信息的存储
  • 控制器控制各种器件进行工作
  • 内部总线连接各种器件,在他们中进行数据的传送
  • ……

不同的CPU有不同的寄存器,如8086CPU中就有: AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW

接下来我们先来认识一部分寄存器

一、通用寄存器

8086CPU的所有寄存器都是16位的,可以存放两个字节。AX、BX、CX、DX这个四个寄存器通常用来存放一般性的数据,被称为通用寄存器。

如AX的逻辑结构图如下所示:

8086CPU上一代是8位的,为了保证兼容性,可以将AX、BX、CX、DX分为8个独立的寄存器来使用:

  • AX分为AH和AL
  • BX分为BH和BL
  • ……

8086CPU的16位寄存器分为两个8位寄存器的情况如下所示:

AX的低8位(o位7位)构成了AL寄存器,高8位(8位15位)构成了AH寄存器。AH和AL寄存器是可以独立使用的8位寄存器。图2.4展示了l6位寄存器及它所分成的两个8位寄存器的数据存储的情况。

二、字在寄存器中的存储

出于兼容性的考虑,8086CPU可以一次性处理以下两种尺寸的数据:

  • 字节:记为byte,一个字节由8个bit组成,可以存放在8位寄存器中
  • 字:记为word,一个字由两个字节组成,分为2高位字节和低位字节,如下所示:

三、几条汇编指令

通过汇编指令控制CPU工作:

四、物理地址

五、16位结构的CPU

六、8086CPU给出物理地址的方法

七、“段地址*16 + 偏移地址 = 物理地址”的本质含义

八、段的概念

九、段寄存器

十、CS和IP

十一、修改CS、IP的指令

十二、代码段