08.11.2014 Views

RealView Compilation Tools アセンブラガイド - ARM Information Center

RealView Compilation Tools アセンブラガイド - ARM Information Center

RealView Compilation Tools アセンブラガイド - ARM Information Center

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>ARM</strong> アセン ブ リ 言 語 の 記 述<br />

2.11 アセンブリ 言 語 に 関 する 変 更<br />

表 2-11 は、 UAL アセンブラ 言 語 と 以 前 の 独 立 した <strong>ARM</strong> アセンブ ラ 言 語 およ<br />

び Thumb アセンブラ 言 語 との 違 いを 示 しています。 UAL 以 前 の <strong>ARM</strong> 構 文 は、<br />

アセンブラでも 認 識 されます。<br />

表 2-11 以 前 の <strong>ARM</strong> アセンブ リ 言 語 からの 変 更 点<br />

変 更 点 UAL 以 前 の <strong>ARM</strong> 構 文 適 切 な 構 文<br />

LDM および STM のデフ ォル ト のア ド レ ッ シングモー<br />

ドは IA です。<br />

<strong>ARM</strong> と Thumb では、 フル 下 降 ス タ ッ ク の 操 作 に<br />

PUSH ニーモニ ッ ク と POP ニーモニ ッ ク を 使 用 でき ま<br />

す。<br />

<strong>ARM</strong> と Thumb では、 ロ テー ト のみを 伴 う ( 他 の<br />

操 作 は 伴 わない) 命 令 の LSL、 LSR、 ASR、 ROR、 およ<br />

び RRX 命 令 ニーモニ ッ ク を 使 用 で き ます。<br />

プログラムカウンタ 相 対 アドレシングには、label<br />

形 式 を 使 用 し ます。 新 しいコードでは offset 形 式 は<br />

使 用 し ないで 下 さ い。<br />

ダブルワード メモ リ アクセスに 両 方 のレジスタを<br />

指 定 し ます。 使 用 で き る レ ジ ス タ の 組 み 合 わせに<br />

ついては、 規 則 に 従 う 必 要 があ り ます。<br />

{cond}??????????????????????????????<br />

<strong>ARM</strong> コード と Thumb-2 コードでは、 <strong>ARM</strong> の 条 件<br />

付 き 形 式 {cond} と Thumb-2 の IT 命 令 の 両 方 を 使 用<br />

する こ とができます。 アセンブ ラ は 両 者 の 整 合 性<br />

をチェ ッ ク し て、 現 在 の 命 令 セ ッ ト に 応 じ て 適 切<br />

なコードをアセンブルします。 IT 命 令 を 省 略 し た<br />

場 合 、 アセンブ ラ が Thumb-2 コー ド に 挿 入 し ます。<br />

LDMIA, STMIA<br />

STMFD sp!, {reglist}<br />

LDMFD sp!, {reglist}<br />

MOV Rd, Rn, LSL shift<br />

MOV Rd, Rn, LSR shift<br />

MOV Rd, Rn, ASR shift<br />

MOV Rd, Rn, ROR shift<br />

MOV Rd, Rn, RRX<br />

LDR Rd, [pc, #offset]<br />

LDRD Rd, addr_mode<br />

ADD{cond}S<br />

LDR{cond}SB<br />

ADDEQ r1, r2, r3<br />

LDRNE r1, [r2, r3]<br />

LDM, STM<br />

PUSH {reglist}<br />

POP {reglist}<br />

LSL Rd, Rn, shift<br />

LSR Rd, Rn, shift<br />

ASR Rd, Rn, shift<br />

ROR Rd, Rn, shift<br />

RRX Rd, Rn<br />

LDR Rd, label<br />

LDRD Rd, Rd2, addr_mode<br />

ADDS{cond}<br />

LDRSB{cond}<br />

ITEQ E ; optional<br />

ADDEQ r1, r2, r3<br />

LDRNE r1, [r2, r3]<br />

2-56 Copyright © 2002-2008 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DUI 0204IJ<br />

Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!