ES(Extra Segment):附加段暂存器。
附加段暂存器ES:存放当前执行程式中一个辅助数据段的段地址。 段暂存器 偏移地址暂存器
基本介绍
- 外文名:ES
- 附加:段暂存器。
- 存放:一个辅助数据段的段地址
- 全面:Extra Segment
ES(Extra Segment):附加段暂存器。
附加段暂存器ES:存放当前执行程式中一个辅助数据段的段地址。
段暂存器 偏移地址暂存器
CS IP
SS SP或BP
DS BX、DI、SI
ES DI(用于串指令)
例子:
; * * * * * * * * * * * * * * * * * * * * * * *
data_seg1 segment ; 定义数据段
. .
data_seg1 ends
; * * * * * * * * * * * * * * * * * * * * * * *
data_seg2 segment ; 定义附加段
. .
data_seg2 ends
; * * * * * * * * * * * * * * * * * * * * * * *
code_seg segment ; 定义代码段
assume cs:code_seg, ds:data_seg1, es:data_seg2
start: ; 程式执行的起始地址
; set DS register to current data segment
mov ax, data_seg1 ; 数据段地址
mov ds, ax ; 存入DS暂存器
; set ES register to current extra segment
mov ax, data_seg2 ; 附加段地址
mov es, ax ; 存入ES暂存器
. .
code_seg ends ; 代码段结束
; * * * * * * * * * * * * * * * * * * * * * * * * * *
end start
段暂存器 偏移地址暂存器
CS IP
SS SP或BP
DS BX、DI、SI
ES DI(用于串指令)
例子:
; * * * * * * * * * * * * * * * * * * * * * * *
data_seg1 segment ; 定义数据段
. .
data_seg1 ends
; * * * * * * * * * * * * * * * * * * * * * * *
data_seg2 segment ; 定义附加段
. .
data_seg2 ends
; * * * * * * * * * * * * * * * * * * * * * * *
code_seg segment ; 定义代码段
assume cs:code_seg, ds:data_seg1, es:data_seg2
start: ; 程式执行的起始地址
; set DS register to current data segment
mov ax, data_seg1 ; 数据段地址
mov ds, ax ; 存入DS暂存器
; set ES register to current extra segment
mov ax, data_seg2 ; 附加段地址
mov es, ax ; 存入ES暂存器
. .
code_seg ends ; 代码段结束
; * * * * * * * * * * * * * * * * * * * * * * * * * *
end start