23.10.2014 Views

RealView - ARM Information Center

RealView - ARM Information Center

RealView - ARM Information Center

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

编 写 <strong>ARM</strong> 和 Thumb 汇 编 语 言<br />

2.3.2 <strong>ARM</strong> 汇 编 语 言 模 块 的 示 例<br />

示 例 2-1 说 明 了 汇 编 语 言 模 块 的 一 些 核 心 成 分 。 此 示 例 是 用 <strong>ARM</strong> 汇 编 语 言 编 写<br />

的 。 在 RVCT 的 examples\asm 子 目 录 下 , 以 armex.s 文 件 形 式 提 供 了 该 示 例 。 有<br />

关 如 何 汇 编 、 链 接 和 执 行 该 示 例 的 操 作 说 明 , 请 参 阅 第 2-2 页 的 代 码 示 例 。<br />

以 下 各 节 详 细 介 绍 此 示 例 的 组 成 部 分 。<br />

示 例 2-1<br />

start<br />

stop<br />

AREA<br />

ENTRY<br />

<strong>ARM</strong>ex, CODE, READONLY<br />

; Name this block of code <strong>ARM</strong>ex<br />

; Mark first instruction to execute<br />

MOV r0, #10 ; Set up parameters<br />

MOV r1, #3<br />

ADD r0, r0, r1 ; r0 = r0 + r1<br />

MOV r0, #0x18 ; angel_SWIreason_ReportException<br />

LDR r1, =0x20026 ; ADP_Stopped_ApplicationExit<br />

SWI 0x123456 ; <strong>ARM</strong> semihosting SWI<br />

END<br />

; Mark end of file<br />

ELF 段 和 AREA 命 令<br />

ELF 段 是 独 立 的 、 命 名 的 、 不 可 分 割 的 代 码 或 数 据 序 列 。 单 个 代 码 段 是 生 成 一 个<br />

应 用 程 序 的 最 低 要 求 。<br />

汇 编 或 编 译 的 输 出 可 以 包 括 :<br />

• 一 个 或 多 个 代 码 段 。 它 们 通 常 是 只 读 段 ;<br />

• 一 个 或 多 个 数 据 段 。 它 们 通 常 是 读 写 段 。 它 们 可 以 是 零 初 始 化 的 (ZI)。<br />

链 接 程 序 依 照 段 位 置 规 则 , 将 每 个 段 放 在 一 个 程 序 映 像 中 。 在 源 文 件 中 相 邻 的<br />

段 , 不 一 定 要 在 应 用 程 序 映 像 中 相 邻 。 有 关 链 接 程 序 如 何 定 位 段 的 详 细 信 息 , 请<br />

参 阅 <strong>RealView</strong> 编 译 工 具 2.0 版 链 接 程 序 和 实 用 程 序 指 南 中 的 链 接 程 序 一 章 。<br />

2-16 © 2002、 2003 <strong>ARM</strong> Limited 版 权 所 有 。 保 留 所 有 权 利 。 <strong>ARM</strong> DUI 0204BSC

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

Saved successfully!

Ooh no, something went wrong!