1、通用寄存器:8086CPU的寄存器都是16位的,可以存放两个字节。其中,用来存放一般性的数据,被称为通用寄存器,它们为AX, BX, CX, DX。
8086CPU的AX, BX, CX, DX,都可以分为两个可独立使用的8位寄存器来用:AX可分为AH和AL;BX可分为BH和BL;CX可分为CH和CL;DX可分为DH和DL;使用add,mov指令时,只能对相同类型的寄存器操作,即只能ax,bx,cx,dx之间操作不能,ax,ah等之间操作。
2、物理地址:物理地址=段地址*16+偏移地址的本质含义:CPU在访问内存时,用一个基础地址(段地址*16)和一个相对于基础地址的偏移地址相加,给出内存单元的物理地址。
3、段地址:段并不是指内存是分段的,段的划分来自于CPU,是因为8086CPU用“物理地址=段地址*16+偏移地址”的方式给出内存单元的物理地址,使得我们可以用分段的方式来管理内存。以后,在编程是可以根据需要,将若干地址连续的内存单元看作一个段,用段地址*16定位段的起始地址(基础地址),用偏移地址定位段中的内存单元。一个段的长度最大为64KB。
4、CS和IP:8086CPU在访问内存时要由相关部件提供内存单元的段地址和偏移地址,送入地址加法器合成物理地址。段地址在CS寄存器中存储,偏移地址在IP寄存器中存储。CS*16+IP即指令的物理地址。
原文地址:https://www.cnblogs.com/jijiexi/p/9788285.html