MASM~~~~汇编语言运行错误~~~~

来源:百度知道 编辑:UC知道 时间:2024/06/06 09:28:31
错误提示是NO STACK SEGMENT
是怎么回事啊???这是老师布置的练习叫我们运行出结果~~~但是每次LINK出来都是~NO STACK SEGMENT!!!
理论上说是没有错的啊~~。。。。。
有没有人告诉我到底是怎么回事啊~~~~

DATA SEGMENT
ORG 0002H
DA1 DB 41H,45H,46H,61H,64H
DA2 DW 4,6,$+7,14,7+$,0DA7H
AD1 DW DA1
AD2 DW DA2
BUF DB 5 DUP(?)
DATA ENDS
STACK SEGMENT PARA 'STACK'
DB 100 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK
BEGIN: MOV AX,DATA
MOV DS,AX
MOV ES,AX
XOR CX,CX
MOV CL,2
ADD AD1,CX
SUB AD2,CX
MOV BX,AD1
MOV DI,BX
MOV SI,AD2
MOV AL,DA1[BX]
MOV BUF[DI],AL
MOV AX,DA2[BX][SI]
MOV WORD PTR BUF,AX
MOV AH,4CH
INT 21H
CODE ENDS
END BEGIN
问题是DEBUG运行没有结果啊。。。。。。

这个'NO STACK SEGMENT'是“Warning”吧,又不是“Error”,直接无视它,该Debug就Debug,该运行就运行,没问题的。
这句话大概的意思是栈空间没有分配,这么一个小程序,又没用到栈空间,没必要理它的

debug的命令格式是: debug 文件名.exe
出现“-”后,可以使用相应命令了:

-R:检查和修改寄存器内容,在你的例子里,这里会显 示AX和BX中的数据
-D:显示存储单元
-E:修改存储单元
-G:运行命令,就是将程序执行
-T:跟踪命令,逐条指令跟踪,显示系统状态(存储器,寄存器,IP等)

我刚试了下,能debug的。
程序里面也没有将结果显示出来的语句啊