Escolar Documentos
Profissional Documentos
Cultura Documentos
Descric
ao
Transferencia
MOV
Rd :=
MVN
Rd :=
LDR
Rd :=
de Dados
Op2
(NOT) Op2
IMEDIADO
Operac
oes L
ogicas e Aritmeticas
ADD
Rd := Rn + Op2
ADC
Rd := Rn + Op2 + C
SUB
Rd := Rn - Op2
SBC
Rd := Rn - Op2 - (NOT) C
RSB
Rd := Op2 - Rn
RSC
Rd := Op2 - Rn - (NOT) C
AND
Rd := Rn AND Op2
EOR
Rd := Rn XOR Op2
ORR
Rd := Rn OR Op2
BIC
Rd := Rn AND (NOT)Op2
Multiplicac
ao
MUL
Rd := (Rm x Rs)
MLA
Rd := Rn + (Rm x Rs)
Comparac
ao
CMP
Rn - Op2, atualiza flags
CMN
Rn + Op2, atualiza flags
TST
Rn AND Op2, atualiza flags
TEQ
Rn EOR Op2, atualiza flags
Saltos
B
BL
BX
BLX
<MNE>{cond} <address>
Salta
Salta com link
Salta para conteudo do registrador
Salta para conte
udo do registrador com link
PC
LR
PC
LR
:=
:=
:=
:=
<address>
PC+4, PC := <address>
Rn
PC+4, PC := Rn
Operando {mode}
IA
Increment After : incrementa depois
IB
Increment Before: incrementa antes
DA
Decrement After : decrementa depois
DB
Decrement Before: decrementa antes
Apelidos
FD
ED
FA
EA
para operac
ao de pilha
STMFD/LDMFD = STMDB/LDMIA
STMED/LDMED = STMDA/LDMIB
STMFA/LDMFA = STMIB/LDMDA
STMEA/LDMEA = STMIA/LDMDB
Operando Op2
Imm
Rn
Rn, <deslop> <quant>
Operando <address>
Operando
[Rn, constante]{!}
[Rn, {-}Rm]{!}
[Rn, {-}Rm <deslop> <quant>]{!}
Indexac
ao
Pre-indexado
Pre-indexado
Pre-indexado
[Rn], constante
[Rn], {-}Rm
[Rn], {-}Rm <deslop> <quant>
P
os-indexado
P
os-indexado
P
os-indexado
{cond}
Condic
ao
Igual
Diferente
Carry setada/maior
ou igual (sem sinal)
CC/LO Carry limpa/menor
(sem sinal)
MI
negativo
PL
positivo ou zero
VS
overflow
VC
no overflow
HI
maior (sem sinal)
LS
menor ou igual (sem
sinal)
GE
maior ou igual (com
sinal)
LT
menor (com sinal)
GT
maior (com sinal)
LE
menor ou igual (com
sinal)
AL
sempre (padr
ao)
Sufixos
Sufixo
EQ
NE
CS/HS
Flags
Z=1
Z=0
C=1
C=0
N=1
N=0
V=1
V=0
(C = 1) e (Z = 0)
(C = 0) ou (Z = 1)
N=V
N != V
(Z = 0) e (N = V)
(Z = 1) ou (N != V)
C
alculo do endereco
Valor em Rn + constante
Valor em Rn + {-} valor em Rm
Valor em Rn + {-} valor em Rm deslocado <quant>
vezes de acordo com o operador de deslocamento
<deslop>
Valor em Rn + constante
Valor em Rn + {-} valor em Rm
Valor em Rn + {-} valor em Rm deslocado <quant>
vezes de acordo com o operador de deslocamento
<deslop>
Operando {size}
B
Byte: Carrega um byte da mem
oria em um
registrador ou armazena o byte menos significativo do registrador na mem
oria.
SB Signed Byte: Carrega um byte da mem
oria
no byte menos sigficativo do registrador e
ajusta os bits restantes de acordo com o
sinal do n
umero.
H
Half-Word : Carrega meia palavra (dois bytes) da mem
oria em um registrador ou armazena os 2 bytes menos significativos do
registrador na mem
oria.
SH Signed Half-Word : Carrega meia palavra
(dois bytes) da mem
oria no registrador e
ajusta os bits restantes de acordo com o
sinal do n
umero.
Operando <reglist>
Lista de registradores ou faixa de registradores separados por vrgula.
Exemplo
Registradores na lista
{R1,R2}
Lista com registradores R1 e R2
{R1-R4}
Lista com registradores R1, R2, R3 e R4
{R1-R3, R7, R11}
Lista com registradores R1, R2, R3, R7 e R11