51单片机的教材中 ,讲 JMP指令的用法时,都是说JMP指令的用法是 JMP @A+DAPT 这种用法,但我看到有同事直接JMP 标签这样来用,代码如下,象JMP B1这样用 请问 也是正确的吗?
A1:
JMP B1
B1:
JNB B_DISABLE , XSCL3E
JMP ZCCX
【讲 JMP指令的用法时,都是说JMP指令的用法是 JMP @A+DAPT 这种用法】
那不是 DAPT,而是DPTR,是 data pointer 的缩写。
JMP @A+DPTR 当然是合法的指令。而跳转指令只有SJMP、AJMP、LJMP。
但是,某些汇编程序允许 JMP addr16 这种用法。遇到 JMP addr16 这样的指令时,汇编程序会根据 addr16 地址的远近,自动选择,使用AJMP或者LJMP指令。不过,不是所有的汇编程序都有这个功能。
引用: maychang 发表于 2023-10-9 12:05 但是,某些汇编程序允许 JMP addr16 这种用法。遇到 JMP addr16 这样的指令时,汇编程序会根据 addr16 地址 ...
非常感谢。这个JMP B1 指令是用在 伟福6000 中的,这个伟福6000 是您所说的可以将JMP 自动 切换成 AJMP 或 LJMP指令的编译器吗?
汇编一般现在都在什么产品上用?
引用: 一沙一世 发表于 2023-10-9 13:16 非常感谢。这个JMP B1 指令是用在 伟福6000 中的,这个伟福6000 是您所说的可以将JMP ...
【这个伟福6000 是您所说的可以将JMP 自动 切换成 AJMP 或 LJMP指令的编译器吗?】
这个,我就不知道了。
引用: damiaa 发表于 2023-10-9 16:02 有些汇编器支持 keil 用的好像是a51编译器。 这样你自己 ...
感谢。您的截图是从哪个资料上截的,可否提供下资料的链接地址。谢谢。
一沙一世 发表于 2023-10-9 16:48 感谢。您的截图是从哪个资料上截的,可否提供下资料的链接地址。谢谢。
一沙一世 发表于 2023-10-9 16:48 感谢。您的截图是从哪个资料上截的,可否提供下资料的链接地址。谢谢。