Как найти абсолютное значение целого числа в дополнении к двум в ARM - PullRequest
0 голосов
/ 15 ноября 2018

Если у меня есть -2 (11111111111111111111111111111110), есть ли аккуратная инструкция ARM или серия таких, которые ее сделают (00000000000000000000000000000010).ИЛИ или XOR не сработает из того, что я попробовал, так как я потерял 30-й бит.

Спасибо

1 Ответ

0 голосов
/ 15 ноября 2018

Для нахождения абсолютного значения целого числа используйте сравнение и вычитание.

@ input in r0
cmp r0, #0          @ is r0 < 0?
rsbmi r0, r0 #0     @ if yes, r0 = 0 - r0
...