汇编第二章

*CPU

一个典型的CPU有运算器,控制器,寄存器(CPU工作原理)等期间构成。内部总线实现CPU各个器件间联系,外部总线实现CPU和主板上其他器件联系。

在CPU中:

1)运算器进行信息处理

2)寄存器进行信息存储

3)控制器控制各器件进行工作

4)内部总线连接各器件,进行数据传递

*8086CPU

8086CPU中通用寄存器是16位,包括AX(AH和AL),BX(BH和BL),CX,(CH和CL)DX(DH和DL)

一个16 位寄存器可存储一个16 位数据,8086CPU中AX,BX,CX,DX可分为两个独立使用的8位寄存器。

一个字节(byte)由8bit组成,一个字(word)可分为两个字节(高位字节和低位字节)。

*几个汇编指令的例子

mov ax,18  将18送入寄存器AX 中,即AX=18

add ax,6  将AX中数加上6,即AX=AX+6

mov ax,bx  将寄存器BX中值送入AX中,即AX=BX

*8086CPU给出物理地址的方法

1)CPU中相关部件提供两个16位地址,分别称为段地址和偏移地址

2)段地址和偏移地址通过内部总线送入一个称为地址加法器的部件

3)地址加法器将两个16位地址合成一个20 位地址

4)地址加法器通过内部总线将20位物理地址送入输入输出控制电路

5)输入输出控制电路将20 位物理地址送上地址总线

6)20位物理地址被地址总线送到存储器

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

*段寄存器包括CS,DS,SS,ES

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

如果要修改CS,IP的内容,用形如“jmp段地址:偏移地址”指令完成。即用指令中段地址修改CS,偏移地址修改IP

仅修改IP内容用“jmp某一合法寄存器”指令完成。

猜你喜欢

转载自www.cnblogs.com/jiangtianji/p/9862311.html