ARM溢出标志

时间:2014-06-01 18:22:38

标签: gcc assembly arm

I read here,在某些情况下也可能设置溢出标志。试用下面的代码示例: -

.global main
.func main

main:
mov r0, #4026531839
mov r1, #-1
sub r0, r0, r1
os is_set
mov r0, #17
bx lr

is_set:
mov r0, #71
bx lr

我收到一条错误消息,上面写着: -

carryflagsub.s: Assembler messages:
carryflagsub.s:8: Error: bad instruction `os is_set'

Isn' t os用于测试溢出标志是否已设置的指令?

2 个答案:

答案 0 :(得分:2)

ARM指令集中没有os指令。但是,要测试是否设置了溢出标志,您可以使用条件执行指令,如此。

bvs is_set

您可以在ARM reference manual中了解条件执行。

答案 1 :(得分:0)

os我认为你的意思是vs

如果您想在vs条件下进行分支,则说明为bvs