汇编语言问题,大虾指教!!!

来源:百度知道 编辑:UC知道 时间:2024/05/27 20:19:24
为什么我在用DOS下编译汇编程序时,总出现下图的圆圈错误?我该怎么改正呢~

debug里的数据都是16进制的,直接mov al, 45就可以了,这个45就是16进制的45

在debug下写汇编程序与需要编译、链接后才能运行的程序不同。

编译器默认的数据是十进制,若要使用其它进制数据,要在数据后面显式缀以进制符号。如十六进制用“H”表示、八进制用“O”或“Q”表示、二进制用“B”表示。用文本编辑器编写的汇编语言源程序,需要编译、链接后,才能运行。若程序中有语法或其它错误,是通不过编译的。

debug下,除了指令,就是数据,且都认为是十六进制的。在这里写程序,简单的几条指令,一般初学者多能操作。若是稍微复杂一些的程序,是需要有经验的程序员才能做得到。

指令MOV AL,45H,若用文本编辑器来书写是完全正确的,能够通过编译。在debug下,则肯定出错。错误原因:

十六进制数中,最大字母是“F”或“f”,“H”不是十六进制有效字母。

更正:
MOV AL,45
这样写就对了,这里的45,就是十六进制的,相当于十进制的69。