Команда LDRLE
на самом деле является командой LDR (регистр загрузки из памяти) с условным условием выполнения «LE» (меньше или равно).
Условие «LE» имеет значение «истина», когда флаг N и флаг V различны, и это также верно, когда установлен бит Z (Z, N и V - 3 из 4 битов флага вPSR).Вы можете найти информацию из ARM в компоновке PSR вашего процессора.
Другими словами, эта инструкция LDR
выполняется только в том случае, если условие «LE» выполняется для текущих флагов в PSR.На эти флаги могут влиять инструкции, выполняющие до вашей инструкции LDRLE
.Другими словами, условие LE оценивается на основе эффектов предыдущих команд , а не значений операндов инструкции current (в данном случае, инструкции LDRLE
).
Наконец, что делает инструкция, если она выполняется (условие LE истинно для текущих флагов PSR)?Он загружает (немедленное) значение 0x1234 в регистр R3.