两个简单的汇编问题,int21 06h中断与int21 02h中断的汇编程序错误

gfgkmn 2009-04-07 08:39:53
DATA SEGMENT
DB 00H,EFH,0EH
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV SI,0000
MOV DL,[SI]
MOV AH,06H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START

反复查看都没有问题,但是程序统计编译后 9:Symbol not defined,不知道是怎么回事,那位大大可以说明一下


DATA SEGMENT
INP DB ?
RUS DB ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV AL,INP
TEST AL,AL
JS FU
JZ ZERS
MOV DL,2BH
JMP OUTP
FU:MOV DL,2DH
JMP OUTP
ZERS:MOV DL,30H
OUTP:MOV AH,02H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
这是第二个程序,意在实现符号判断,结果编译后,提示 85:End of file, no END directive
我这个程序明明已经写了结束伪指令了啊,又是一个大的不明白
系统是xp sp3 使用masm 3.0

那位先生可为我解疑,不胜感激
...全文
315 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
gfgkmn 2009-04-07
  • 打赏
  • 举报
回复
多谢各位,自己在又仔细看的时候,看出来第一个程序中那个DB 00H,EFH,0EH
中的EFH前面应该加零,改成0EFH后问题解决

至于第二个程序,很诡异地突然又运行正常了,也不知道怎么回事,唉,莫非是灵异事件,呵呵,反正还是多谢各位支持,分已给出
wxgiter 2009-04-07
  • 打赏
  • 举报
回复
换个编译器,MS的编译器版本很多,换个较新的。。。
rookie001 2009-04-07
  • 打赏
  • 举报
回复
3.0,估计版本太低啦,换个编译器试试,5.0的应该就行了
BAYNPU 2009-04-07
  • 打赏
  • 举报
回复
可能是编译器问题,要使用MASM615编译器.
我用MASM615的编译器汇编可以通过呀.
BAYNPU 2009-04-07
  • 打赏
  • 举报
回复
可能是编译器问题,要使用MASM615编译器.
我用MASM615的编译器汇编可以通过呀.

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧