IBM8086架构
8个16位通用寄存器(CPU 内部的数据单元)
其中的4个AX、BX、CX、DX 为可以分成两个 8 位的寄存器来使用,分别是 AH、AL、BH、BL、CH、CL、DH、DL。
其中 H 就是 High(高位),L 就是 Low(低位)的意思。
IP 寄存器
指令指针寄存器(Instruction Pointer Register),指向代码段中下一条指令的位置。
CPU 会根据它来不断地将指令从内存的代码段中,加载到 CPU 的指令队列中,然后交给运算单元去执行。
段寄存器
CS -代码段寄存器(Code Segment Register)
通过它可以找到代码在内存中的位置
DS -数据段寄存器(Data Segment Register)
通过它可以找到数据在内存中的位置。
SS -栈寄存器(Stack Register)
栈是程序运行中一个特殊的数据结构,数据的存取只能从一端进行,秉承后进先出的原则,push 就是入栈,pop 就是出栈。
段数据-寻址过程
对于一个段,有一个起始的地址,而段内的具体位置,我们称为偏移量(Offset)。