王爽汇编语言第二章——寄存器

第二章    寄存器

1、一个典型的cpu由运算器、控制器、寄存器等器件组成,这些器件靠内部总线相连。

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

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

3、AX、BX、CX、DX通常用来存放一般性数据,被称为通用寄存器。为了保证兼容性,这四个寄存器都可以分为两个独立的8位寄存器使用。AX可以分为AH和AL;BX可以分为BH和BL;CX可以分为CH和CL;DX可以分为DH和DL。

4、8086cpu所有的寄存器都是16位的,可以存放两个字节。

5、用十六进制来表示数据可以直观的看出这个数据是由哪些8位数据构成的。每两位对应一个八进制。

6、汇编指令不区分大小写。

7、cpu访问内存单元时要给出内存单元的地址。我们将这个唯一的地址称为物理地址。所有的内存单元构成的存储空间是一个一维的线性空间。

8、概括的讲,16位结构描述了一个cpu具有以下几个方面的特征:(1)运算器一次最多可以处理16位的数据。(2)通用寄存器的最大宽度为16位。(3)寄存器和运算器之间的通路是16位的。

9、8086cpu有20位地址总线,可传送20位地址,寻址能力位1MB。

10、8086cpu内部为16位结构,它只能传送16位的地址,表现出的寻址能力只有64KB。

11、8086cpu采用一种在内部用两个16位地址合成的方法来形成一个20位的物理地址。

12、8086cpu读写内存时,发生了这么一些事:(1)cpu中的相关部件提供两个16位的地址,一个称为段地址,另一个称为偏移地址。(2)段地址和偏移地址通过内部总线送入一个称为地址加法器的部件。(3)地址加法器将两个16位地址合并成一个20位的地址。(4)……

13、地址加法器合成物理地址的方法:物理地址=段地址*16+偏移地址。“段地址*16”有一个更为常用的说法就是数据左移4位(二进制位)。基础地址+偏移地址=物理地址。

14、内存并没有分段,段的划分来自于cpu。由于8086cpu用“段地址*16+偏移地址=物理地址”的方式给出内存单元的物理地址,使得我们可以用分段的方式来管理内存。

15、可以根据编程时的需要,将若干地址连续的内存单元看作一个段,用段地址*16定位段的起始地址(基础地址),用偏移地址定位段中的内存单元。

16、偏移地址为16位,16位地址的寻址能力为64KB,所以一个段的长度最大为64KB。

17、“数据在21F60H内存单元中”对于8086pc机的两种描述:(1)数据存在内存2000:1F60单元中。

数据存在内存的2000段中的1F60H单元中。

18、可根据需要,将地址连续、起始地址为16的倍数的一组内存单元定义为一个段。

19、段寄存器就是提供段地址的。

20、8086cpu有四个段寄存器:CS、DS、SS、ES。当8086cpu要访问内存时,由这四个段寄存器提供内存单元的段地址。

21、CS和IP是8086cpu中最关键的寄存器,它们指示了cpu当前要读取指令的地址。CS为代码段寄存器;IP为指令指针寄存器。

22、8086pc工作过程的简要描述:

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

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

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

23、8086cpu工作过程的简要描述:在8086cpu加电启动或复位后(即cpu刚开始工作时),CS和IP被设置为CS=FFFFH,IP=0000H。即在8086pc机刚启动时,cpu从内存FFFF0H单元中读取指令执行。FFFF0H单元中的指令是8086pc机开机后执行的第一条指令。在任何时候,cpu将CS,IP中的内容当作指令的段地址和偏移地址,用它们合成指令的物理地址,到内容中读取指令码执行。

24、如果说内存中的一段信息曾被cpu执行过的话,那么它所在的内存单元必然被CS:IP指向过。

25、在cpu中,程序员能够用指令读写的部件只有寄存器,程序员可以通过改变寄存器中的内容实现对cpu的控制。

26、mov指令可以改变8086cpu大部分寄存器的值,被称为传送指令。但是mov指令不能用于设置CS,IP的值。

27、修改CS,IP的值:

(1)同时修改CS,IP的内容:jmp 2AE3:3→2AE33H

功能:用指令中给出的段地址修改CS,偏移地址修改IP。

(2)仅修改IP的值:jmp 某一合法寄存器 jmp ax

功能:用寄存器中的值修改IP。

28、代码段:可以将长度为N(N<=64KB)的一组代码存在一组地址连续、起始地址为16的倍数的内存单元中,这段内存是用来存放代码的,从而定义了一个代码段。

29、cpu访问内存单元时,必须向内存提供内存单元的物理地址。

30、8086cpu在内部用段地址和偏移地址移位相加的方法形成最终的物理地址。

31、cpu可以用不同的段地址和偏移地址行形成同一个物理地址。

32、偏移地址16位,变化范围为0--FFFFH,仅用偏移地址来寻址最多可寻64KB个内存单元。

猜你喜欢

转载自blog.csdn.net/weixin_42617472/article/details/82874842