参考书籍:《Intel微处理器》
表1 默认的16位段 + 偏移寻址组合
段 | 偏移量 | 特殊用途 |
CS | IP | 指令地址 |
SS | SP或BP | 堆栈地址 |
DS | BX、DI、SI、8位或16位数 | 数据地址 |
ES | 串指令的DI | 串目标地址 |
表2 默认的32位段 + 偏移寻址组合
段 | 偏移量 | 特殊用途 |
CS | EIP | 指令地址 |
SS | ESP或EBP | 堆栈地址 |
DS |
EAX、EBX、ECX、EDX、 ESI、EDI,一个8位或32位数 |
数据地址 |
ES | 串指令的EDI | 串目标地址 |
FS | 无默认值 | 一般地址 |
GS | 无默认值 | 一般地址 |
◆ SEG指令:
SEG指令改变默认的“段 + 偏移寻址组合”中的段寄存器。
SEG CS MOV sectors, CX MOV AX, #INITSEG
SEG 只会影响MOV sectors, CX(相当于MOV CS:[sectors], CX),而不会影响MOV AX, #INITSEG。