有人可以在这里解释一下,TC17** 汇编器如何计算出“movh.a 和 lea”寻址(十六进制),如果我有一个像我的图片中显示的配置值,我如何为自己计算它们,这是定义的作为“常数”或“全局”。
我想要做的是,为自己创建/组装这条 32 位指令,但最后几天我没有进行任何处理。当然,我知道如何使用 Eclipse Toolchain 进行组装,但我不能在我的程序中使用这个工具链。我正在使用 PHP 编程,但这并不重要,如果我知道如何解决这个问题。
例如,这是一张带有 IDApro 视图的图片,其中包含我必须组装的命令:
作为 32 位十六进制指令,它看起来像这样:
ASM: movh.a a15, #@HIS(configuration_value_1)
HEX: 91 70 01 F8
ASM: lea a15, [a15]@LOS(configuration_value_1)
HEX: D9 FF E4 67
我现在要做的是制定 HEX 汇编程序指令,并正确寻址我的变量。在这种情况下,它位于:“0x80177DA4”。
在指令集中,它的解释如下: