第二章 寄存器

1.一个典型的CPU由运算器,控制器,寄存器(CPU工作原理)等器件构成,这些器件靠内部总线相连。

2.不同的CPU,寄存器的个数,结构是不相同的。8086CPU有14个寄存器:

AX,BX,CX,DX(通用寄存器),SI,DI,SP,BP(基址和变址寄存器),CS,SS,DS,ES(段寄存器),IP,FR(指令指针和标志寄存器)

AX:Accumlator Register

BX:Base Register

CX:Count Register

DX:Data Register

CS:Code Segment Register

IP:Instruction Pointer Register

术语:

CPU字长:CPU在单位时间内能一次处理的二进制位数,该指标反映出CPU内部运算处理的速度

x位CPU:    用字长来描述CPU

位宽:       CPU通过外部数据总线与内存之间一次能够传送的数据位。

ISA: 一个处理器支持的指令和指令的字节级编码称为它的ISA。

Intel指令集为IA32指令集,俗称x86,这个系列也俗称x86系列。

不同类型的CPU的差异:

1.处理的字长不同,速度不同

2.工作模式

3.指令集的丰富程度

2.1 通用寄存器

8086CPU中,寄存器AX,BX,CX,DX通常用于存放一般性数据,称为通用寄存器。每个寄存器均为16位。

为了兼容,均可拆成两个8位寄存器使用   H   L

2.2 字在寄存器中的存储

字节(byte):由8个bit组成,可以存在8位寄存器中

字:由两个字节组成,高位和低位

为了区分不同的进制,在十六进制表示的数据后面加H,在二进制表示的数据后面加B,十进制表示的数据后面什么也不加

2.3 几条汇编指令

mov,add

指令注意事项:

1.两个操作对象的位数应一致

2.运算时超出寄存器表示的位数的情形

注意:超出后并非存在H 里,AL,AH各自作为独立的寄存器使用

8086给出物理地址的方法

物理地址:所有的内存单元构成的存储空间是一个唯一的一维的线性空间,每一个内存单元在这个空间中都有一个唯一的地址,即物理地址

8086内部存储器16位,外部地址总线宽20位,需要采用一种在内部用两个16位地址合成的方法来形成一个20位的物理地址

地址加法器采用物理地址=段地址*16+偏移地址的方法合成物理地址

段地址在8086的段寄存器存放,8086有4个段寄存器:CS,DS,SS,ES

CS为代码段寄存器,IP为指令指针寄存器。

8086CPU工作过程简要描述如下:

(1)从CS:IP指向的内存单元读取指令,读取的指令进入指令缓冲器;

(2)IP=IP+所读取指令的长度,从而指向下一条指令;

(3)执行指令。转到步骤(1),重复此过程

CPU将CS:IP指向的内存单元中的内容看作指令

mov指令不能用于设置CS,IP的值,能够改变CS,IP的内容的指令统称为转移指令。jmp指令为其中一个

jmp 段地址:偏移地址

jmp 某一合法寄存器   的功能为:用寄存器中的值修改IP

jum ax,在含义上好似:move IP,ax

原文地址:https://www.cnblogs.com/wtblogwt/p/9695474.html