例4.4
将两个数据段DSEG1
和DSEG2合并在一个段组DATAGROUP中。
;----------------------------------------------------
DSEG1 SEGMENT WORD PUBLIC 'DATA'
.
.
.
DSEG1 ENDS
;---------------------------------------------------
DSEG2 SEGMENT WORD PUBLIC 'DATA'
.
.
.
DSEG2 ENDS
MOV AX, @DATA ; 数据段地址
MOV DS, AX ; 存入数据段寄存器
.
.
.
;---------------------------------------------------
DATAGROUP GROUP DSEG1, DSEG2 ;组合成段组
CSEG SEGMENT PARA PUBLIC 'CODE'
ASSUME CS : CSEG,
DS : DATAGROUP
START: MOV
AX, DATAGROUP
MOV DS, AX ;DS赋值为段组地址
.
.
.
MOV AX, 4C00H
INT 21H
CSEG ENDS
;-----------------------------------------------------
END
START
利用GROUP伪指令定义段组后,段组内统一为一个段地址,各段定义的变量和标号都可以用同一个段寄存器进行访问。