请教大神一个汇编问题,代码和输出结果在下面:
代码源代码如下:
STACK SEGMENT PARA STACK'STACK'
DB 100 DUP(?)
STACK ENDS
DATA SEGMENT
BUFFER DB 'a','b','c','d','e','f','g'
STARTD DB '0102030405060708091011121314151617181920212223242526272829303132'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START PROC FAR
BEGIN: PUSH DS
MOV AX,0
PUSH AX
MOV AX,DATA
MOV DS,AX
MOV SI,OFFSET STARTD
ADD SI,3
MOV DL,[SI] ;输出指针所指字符
MOV AH,2
INT 21H
START ENDP
CODE ENDS
END BEGIN
为什么汇编链接运行后结果是这样的,当然输出的2不只有图片上那么多,有数不清的2.
------解决方案--------------------------------------------------------
你的程序没有结束命令,一直在运行。另外
BEGIN: PUSH DS
MOV AX,0
PUSH AX
这是用来做什么的呢?