assembly - BEQ指令到底有什么作用?

标签 assembly motorola

我有以下我试图理解的汇编代码片段。它是 MC68332 微 Controller 的组件。

LOOP
    some instructions
    some more instructions
BEQ LOOP

我用谷歌搜索了 BEQ,发现它意味着结果为零的分支,但我仍然不太明白它的作用。它是否将最后一条指令的结果与0进行比较,如果是0,则返回LOOP行?

最佳答案

在 Motorola 68k 系列上,它代表“如果相等则分支”,这意味着“如果设置了零标志则跳转到给定地址”,例如当之前的比较成功时。

但是,68332似乎有所不同。基于大写语法,它可能是围绕另一条指令的宏,本质上做同样的事情。

从其他系统移植代码的汇编程序员可以使用类似的宏来简化移植过程。

关于assembly - BEQ指令到底有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9152524/

相关文章:

c - 修改并汇编.s文件

c - 如何查找 sscanf 输入程序集的格式

c - 为什么我要向堆栈指针添加一个地址?

assembly - 了解 Motorola 68k 中的用户堆栈指针与系统堆栈指针

android - Gradle 为特定设备构建 flavor

Android Widget 在更新期间显示奇怪的图像

c - gdb 的静态地址。不使用 gdb 进行更改

assembly - ".align"指令在 x86-64 汇编中意味着什么?

android - Gamma 曲线实验——将 2.2 转换为 1.8 的相反值?

android - Jquery Mobile 表单显示两个输入区域