Какова цель поставить непосредственное значение в скобках в сборке ARM? - PullRequest
3 голосов
/ 10 августа 2011

1001 * т.е. *

subs    r2, r2, #(32)

против

subs    r2, r2, #32

Если у вас есть источник, я бы хотел его увидеть, поскольку я не смог найти упоминания о нем.

Спасибо!

1 Ответ

11 голосов
/ 10 августа 2011

На самом деле это скобки, а не скобки.

Нет разницы между:

subs    r2, r2, #(32)

и

subs    r2, r2, #32

Я подозреваю, что использовался (32)чтобы быть чем-то вроде (32 - 8) или чем-то интересным / значимым / необходимым в то время, тогда «- 8» был удален, но скобки были просто сохранены, поскольку они не причиняют вреда.


Ради полноты, хотя это не то, что вы просили, и вы, вероятно, уже знаете это:

Код

LDR r0, [r1]

с "скобками" (зарегистрировать косвенный) загружает r0 значением, адрес которого хранится в r1 - другими словами, если r1 содержит 1000, r0 будет загружено из MEM [1000]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...