我正在从头开始用 VHDL 实现整套 8051 指令。大多数事情进展顺利,但偶然发现了这两条指令:
JB bit,rel
00100000 bit_address rel_address
CJNE A,#data,rel
10110100 immediate_data rel_address
非常感谢任何帮助或提示。先感谢您!
我正在从头开始用 VHDL 实现整套 8051 指令。大多数事情进展顺利,但偶然发现了这两条指令:
JB bit,rel
00100000 bit_address rel_address
CJNE A,#data,rel
10110100 immediate_data rel_address
非常感谢任何帮助或提示。先感谢您!
相对地址由程序员提供。这通常由汇编程序根据标签计算得出。
您的 asm 文件将包含:
...asm code
...asm code
JB some_bit, some_label
...more asm code
...more asm code
...more asm code
some_label:
...more asm code
...more asm code
汇编器将分析 JB 指令和标签之间的代码,并计算到达标签所需的偏移字节数,这是它提供给 JB 指令的数字。
这是8051指令的一个很好的解释。
也许你可以从http://www.cs.ucr.edu/~dalton/i8051/i8051syn/得到一些提示?