我在Z80汇编语言中有以下说明:
JP .
我不清楚它跳到哪里。
答案 0 :(得分:1)
JP .
指令意味着PC仍在那里!!!
答案 1 :(得分:0)
许多装配工提供特殊变量或其他符号,可用于表示装配过程中可用的有用信息。
例如,一个早期汇编程序(这在我过去很深,所以我不确定它是哪一个),使用$
来表示正在汇编的当前位置,这允许你做比如:
msg: ds "This is my message"
msg_sz: equ $ - msg
鉴于$
是要汇编的下一个字节,符号msg_sz
将被设置为减去消息的开头,这实际上是 size 说消息。然后,您可以将msg
加载到一个寄存器中,msg_sz
加载到另一个寄存器中,然后调用一个使用这两个值来处理该消息的函数。
几乎可以肯定汇编程序中的.
执行相同的功能,因为这会有效地使jump
成为无限循环,这是我们在早期汇编程序分配中常用的信号程序的结束 - 我们所做的大部分工作都是裸机,所以没有操作系统可以返回: - )
事实上,GNU汇编程序as
仍然使用句点special symbol:
特殊符号
'.'
指的是当前正在汇编的地址。因此,表达式'melvin: .long .'
定义Melvin
以包含其自己的地址。将值分配给.
与.org
指令的处理方式相同。因此,表达式'.=.+4'
与说'.space 4'
相同。