Немного примеров:
1 MOV
r0, r4
; move the value of R4 in R0
2 ADD
r0, r3, r4
; R0 = R3 + R4
3 SUB
sp, sp, #100
; SP = SP – 100
Некоторые виды использования инструкций сравнения:
1 TST r2, #2
;compares a register value with an
arithmetic value
2 bne routine_5
;
jump if not equal
В целом, инструкции обработки данных ARM очень гибкие, потому что они
принимают множество параметров и выполняют
много работы с помощью
одной инструкции.
Рис. 6: ADD r0, r1, r2
Например, ADD требует три регистра, он суммирует последние два регистра и
сохраняет результат в первый, не изменяя значения слагаемых: в
других
архитектурах, таких как Intel x86, один из регистров части операции всегда
изменяется.
3.5 Инструкции передачи регистров состояния
Эти инструкции используются для передачи содержимого CPSR в регистр
общего
назначения регистр, и наоборот.
С помощью этих инструкций, изменяя соответствующие
биты регистра
состояния, можно можно получить различные результаты:
16
Прямая установка флагов кода состояния
Включить или
отключить прерывания
Изменение режима работы процессора
Изменение порядка ( little/big endianness)
Изменение набора инструкций (ARM, Thumb, Jazelle)
Инструкции следующие:
Do'stlaringiz bilan baham: