NASM:方括号的使用,$ 和 $$

方括号

可以用来

  1. 包含原始指令。(而用户级指令没有方括号)
  2. 访问标签(变量)中的内容。(类似C语言*解除引用)

例如:

foo dw 0x7c00H
mov ax,foo     ;foo没有加[],代表将foo在段中的偏移量(首地址)“7”放进ax中
mov ax,[foo]   ;加了[],代表将foo的内容0x7c00放入ax当中去

$ 和 $$

  • $ 表示当前行汇编后的地址。
  • $$ 表示当前 section 汇编后的地址。
  • $ - $$ 表示本行距离程序开始处的相对距离。

发表留言

本站启用了垃圾评论检测插件,如果误删请联系我~