1. 基本概念
机器指令不区分有符号数或无符号数!
参考资料
2. 仿真实验
● ADD
MOV R1, #0x80000000
MOV R0, #0x80000000
ADDS R2, R1, R0 //最高位向更高位进位 -- C flag 设置; 最高位均为1,相加得0,-- V flag设置;R0 = 0, Z flag设置
● SUB
MOV R1, #0x80000000
MOV R0, #0x01
SUBS R2, R1, R0 //最高位从1,变成0 -- V flag设置。(ARM没有发生借位时,C flag被设置)
MOV R3, #0x80000000
SUBS R2, R1, R3 //Z flag 置位
SUBS R2, R0, #0x02 // N flag 置位(bit[31] = 1)
本文介绍了ARM指令集中ADD和SUB指令在处理有符号数和无符号数时的行为。通过实验示例展示了最高位进位、溢出标志以及各种状态标志如何在不同情况下的设置。探讨了当最高位为1时,如何影响计算结果和标志位的状态。
2146

被折叠的 条评论
为什么被折叠?



