这样写是不是不对的?

XXKKFF 2010-04-02 12:08:52
mov ax, location1
location1: mov ax, 4


如果location1是一个变量的话,那第一行就是把location1的值送ax,但是现在location1是一个标号,它没有值,就不存在把“它的值送ax”的说法了
如果要把这个标号的位移送ax,又应该用offset 这个析值操作符,但是上面又没有用offset。

所以上面第一行就是一个四不像了
但是奇怪的是又可以编译得过,这是为什么呢?
...全文
59 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
XXKKFF 2010-04-02
  • 打赏
  • 举报
回复
结帖后还可以回复?
Ktr 2010-04-02
  • 打赏
  • 举报
回复
2楼说得很对,这跟编译器有关,如果用masn编译,则不成功,必须用OFFSET
如果用nasm编译,则成功
XXKKFF 2010-04-02
  • 打赏
  • 举报
回复
有没有其他意见呢?
cnzdgs 2010-04-02
  • 打赏
  • 举报
回复
这问题与汇编器有关,严格来讲这样写是不对的,但某些汇编器会将其解释为变量或取标号的偏移量,自己在程序时应避免这种写法。

21,459

社区成员

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

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