1
5
可能无效 ,即使它们符合数据表中定义的格式。 换句话说,并不是组成指令字的各个部分的所有可能组合都是有效的。特别是,许多使用即时寻址模式的单操作数指令和许多目标使用即时寻址模式的双操作数指令在语义上可能不可行。 文档中对此只有一些提示,例如,在《用户指南》第3.3.7节(关于即时寻址模式)中,注释指出“ 仅对源操作数有效。 (顺便说一句,这适用于即时寻址模式的所有情况,而不仅仅是R2或R3常量生成技巧所允许的简写情况。)
为了便于文档记录,我收集了以下有关MSP430的一些有用参考资料:
|
2
2
在当前用户指南的第3.4.4.2节中,建议不要在命令RRA的目标字段中使用立即模式(#N),因为它会导致“不可预测的程序操作” |
3
1
有可能是的。查看维基百科上的指令集,操作码对寄存器和各种选项进行编码。所以这不是一个简单的映射。看起来您得到的输出是little endian,因此:
对应于指令1012,其二进制形式为0001 0000 0001 0010。
您需要以类似的方式分解其他说明才能完全理解。对于ADD指令,源寄存器和目标寄存器/地址都在 |
Ilya Loskutov · 无法将单词加载到寄存器中 2 年前 |
Ari157 · x86_64 Linux程序集中的逻辑与实现 2 年前 |
Arya · 汇编语言中的“标签”——操作码 2 年前 |
S1mple · 通过gcc生成64位共享库时的“未定义的主引用” 2 年前 |
R0M2 · 为什么“GCC”忽略汇编代码的-fno pic 2 年前 |
Akagi Akira · 如何在gnu汇编程序中组装MIPS cpu 2 年前 |