我的老师已经指示我在编写指令0之前追加,hexa numbers因为一些编译器会0在指令编号之前搜索,以区别于标签.如果指令已经以0开头,我很困惑,在这种情况下该怎么办?
例如,
AND BL, 0FH
Run Code Online (Sandbox Code Playgroud)
是否需要0在该六进制数之前添加?请帮帮我.谢谢
对不起,如果我以前不够清楚.我的意思是,在上面的例子中,0已经存在,我是否需要将其转换为,
AND BL, 00FH
Run Code Online (Sandbox Code Playgroud)
除了像0或的特殊情况1,我倾向于使用完整的数字编码我的十六进制数字,以便更容易看到意图是什么:
mov al, 09h
mov ax, 0123h
Run Code Online (Sandbox Code Playgroud)
等等.
对于数字以字母(如deadbeef)开头的情况,我在前面添加额外的字符0.
但不,如果您的十六进制数字已经以数字开头,通常不(a)必须这样做.
在任何情况下,我都会将大多数数字放在一个equ声明中,而不是在整个代码中添加幻数.你愿意看到:
mov ax, 80
Run Code Online (Sandbox Code Playgroud)
要么:
mov ax, lines_per_screen
Run Code Online (Sandbox Code Playgroud)
(a)当然,这取决于你的汇编程序,但是从记忆中,我用过的所有工作都是这样的.
| 归档时间: |
|
| 查看次数: |
159 次 |
| 最近记录: |