还有就是涉及到数据段的问题,数据段可以有2个段寄存器:ds、es,则masm会给你添加段前缀,或者你手动添加。你编译一下这段代码,研究一下就懂了。assume cs:codesg,ss:stacksg,ds:datasg1,es:datasg2
;-------------------------------------------
stacksg segment stack
db 100 dup (0)
stacksg ends
;-------------------------------------------
datasg1 segment
tnum1 db 6
datasg1 ends
;-------------------------------------------
datasg2 segment
tnum2 db 9
datasg2 ends
;-------------------------------------------
codesg segment
start:
mov ax,datasg1
mov ds,ax
mov ax,datasg2
mov es,ax
;-------------------------------------------
mov al,tnum1
mov al,tnum2
;-------------------------------------------
mov ax,4c00h
int 21h
codesg ends
end start
|