Кто-нибудь может объяснить, как работает инструкция LDRD?

Я просто не могу найти разумного объяснения ldrd. Что будет в r2, что в r3? ldrd r2, r3, [r1]


person you_me_on    schedule 28.09.2016    source источник
comment
В Справочном руководстве по архитектуре ARM (документ DDI 0100E) это объясняется довольно четко.   -  person Michael    schedule 28.09.2016


Ответы (1)


Проще говоря, при условии, что базовый адрес выровнен правильно, ldrd r2, r3, [r1] эквивалентно:

ldr r2, [r1]
ldr r3, [r1, #4]

Существуют различные соображения относительно выравнивания и атомарности, которые зависят от точной версии архитектуры и деталей реализации, но обратите внимание, что порядок следования байтов не является одним из них; слово с младшим адресом всегда помещается в регистр с четным номером.

person Notlikethat    schedule 28.09.2016