読者です 読者をやめる 読者になる 読者になる

備忘録

備忘録

ARM Opcodeメモ

ADD 加算

例. ADD(S) <dst>, <op 1>, <op 2>
dst = op1 + op2;

SUB 減算

例. SUB(S) <dst>, <op 1>, <op 2>
dst = op1 - op2;

EOR 排他的論理和(XOR)

例. EOR  <op 1>, <op 2>
(op1 == op2)? 0 : 1;

LDR レジスタの読み込み

例1. LDR <dst>, <op 1>
dst = op1;

例2. LDR <dst>, [<op 1>]
dst = *(op1);

例3. LDR <dst>, [<op 1>, offset]
dst = *(op1 + offset);

STR レジスタの書き込み

例. STR <src>, [<dst>]
*(dst) = src
1バイト 2バイト 4バイト
ロード (符号なし) LDRB LDRH LDR
ロード (符号付き) LDRSB LDRSH LDR
ストア STRB STRH STR

LSL 論理左シフト

例. LSL <dst>, <src>, <op 1>
dst = src << op1

LSR 論理右シフト

例. LSR <dst>, <src>, <op 1>
dst = src >> op1