注册 登录
编程论坛 汇编论坛

错在哪

ADALE 发布于 2006-03-16 17:50, 571 次点击
DATA SEGMENT
BUF1 DB 1
BUF2 DB 2
SUM DB ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS: DATA
START:
MOV AX,DATA
MOV DS,AX

MOV AL,BUF1
ADD AL,BUF2
MOV SUM,AL
MOV AH,4CH
INT 21
CODE ENDS
END START
当我弄到这时D:\masm>T1.EXE
就出现 命令提示符-t1.exe
NTVDM CPU 遇到无效的指令
CS:0554 IP:8840 0P:63 68 69 76 69 选择“关闭”中止应用程序
我应该怎么办
3 回复
#2
chengiant2006-03-18 23:29

你的"int 21"应改为int 21H",这是DOS功能掉用,属于系统地址段,你若在WINDOWS下运行当然会出错,退到DOS状态下方能运行,我一开始学汇编时也遇到过这种情况

#3
ADALE2006-03-19 21:58

对啊,我怎么老是这么大意
谢谢

#4
ADALE2006-03-19 22:01
奇怪,我改了还是一样,是不是我的机的问题
1