. . . .
dstring_2 db ' 附加段的字符串:' , '$' ;在屏幕上显示的字符串
DSEG ENDS
ESEG SEGMENT
sstring DB 15 DUP(?) ;附加段预留 15 个字节空间
ESEG ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DSEG, ES:ESEG
start: MOV AX, DSEG ;程序开始执行的地方
MOV DS, AX ;将 DSEG 的段地址给 ds
MOV AX, ESEG
MOV ES, AX ;将 SSEG 的段地址给 es
LEA SI, dstring ;将 dstring 的首地址给 si
LEA DI, sstring ;将 sstring 的首地址给 di
MOV CX, 15 ;CX 存放 loop 指令的循环次数
S: MOV AL, [SI]
MOV ES:[DI], AL
INC DI
INC SI
LOOP S
mov dX,offset dstring_1
MOV AH,09h
INT 21H ;输出字符串‘数据段的字符串:’
MOV DL,0AH ;输出换行
MOV AH,02H
INT 21H
mov dX,offset dstring
MOV AH,09h
INT 21H ;输出字符串:HELLO,WORLD!!!
MOV DL,0AH
MOV AH,02H
INT 21H ;输出换行
mov dX,offset dstring_2
MOV AH,09h
INT 21H ;输出字符串 dstring_2
MOV DL,0AH
MOV AH,02H
INT 21H ;输出换行
mov al,'$'
mov es:[di-3],al ;将第二个'!'改成'$'以终止字符串的继续输出
MOV AX,ES
MOV DS,AX ;将附加段的段地址附给数据段
mov dX,offset sstring
MOV AH,09h
INT 21H ;显示字符串 HELLO,WORLD!注意不是!!!
5 / 21
评论0
最新资源