assembly - 微 Controller 8051 : How to get addresses of inputs to JB & CJNE instructions?

标签 assembly embedded microcontroller vhdl 8051

我正在从头开始用 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 指令的数字。

Here很好地解释了 8051 指令。

关于assembly - 微 Controller 8051 : How to get addresses of inputs to JB & CJNE instructions?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1631198/

相关文章:

c - 如何使用PIC18在 Debug模式下模拟中断?

c - 再次收集2 : ld returned 1 exit status

debugging - Arduino/AVR ATmega 微 Controller ,随机复位、跳转或变量/数据损坏

c++ - 运行时检查失败 #0 - ESP 的值未在函数调用中正确保存

c++ - 将非原子加载到与原子变量相同的缓存行会导致原子变量失败吗?

assembly - 当D-cache关闭时使D-cache失效的目的是什么?

c - 了解指针的用法

embedded - 如何确定嵌入式系统中的最大堆栈使用量?

linux - 获取一组数据末尾的地址?

c - fgets 函数不起作用