ARM程序集中的负数

目前我正在努力如何在ARM程序集中使用负数。 假设我有这样一个简单的代码:

MOV R0, #0
SUB R0, R0, #1
SWI 4

R0明显存储值0xFFFFFFFF ,但SWI似乎不把它看作一个有符号的整数,所以显示的数字是4294967295.我怎样才能打印出-1?


据我了解, SWI 4调用OS中的某个数字显示例程或任何执行环境。 如果有适当的SWI some other number显示有符号整数的SWI some other number ,请使用它。 你应该真的提到你的操作系统。

如果没有与SWI 4对应的签名对象,计算负数的绝对值(例如从0减去),然后分别显示减号和绝对值。 负值的最高位设置为1。

链接地址: http://www.djcxy.com/p/72543.html

上一篇: Negative numbers in ARM assembly

下一篇: Please explain the logic behind Kernighan's bit counting algorithm