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.10.1 相 对 映 射<br />

要 存 取 当 前 指 令 4KB 范 围 外 的 数 据 , 可 以 使 用 相 对 寄 存 器 的 指 令 , 例 如 :<br />

LDR<br />

r4,[r9,#offset]<br />

offset 被 限 制 为 4096, 因 此 r9 必 须 已 包 含 位 于 数 据 地 址 的 4KB 范 围 内 的 一 个 值 。<br />

示 例 2-16<br />

MAP 0<br />

consta FIELD 4 ; consta uses four bytes, located at offset 0<br />

constb FIELD 4 ; constb uses four bytes, located at offset 4<br />

x FIELD 8 ; x uses eight bytes, located at offset 8<br />

y FIELD 8 ; y uses eight bytes, located at offset 16<br />

string FIELD 256 ; string is up to 256 bytes long, starting at offset 24<br />

利 用 示 例 2-16 中 的 映 射 , 可 以 使 用 下 列 指 令 来 访 问 数 据 结 构 :<br />

MOV<br />

LDR<br />

r9,#4096<br />

r4,[r9,#constb]<br />

标 号 是 相 对 于 数 据 结 构 的 开 始 位 置 的 。 用 于 存 放 映 射 的 起 始 地 址 的 寄 存 器 ( 此<br />

例 中 为 r9) 称 为 基 址 寄 存 器 。<br />

可 能 有 很 多 LDR 或 STR 指 令 访 问 此 数 据 结 构 中 的 数 据 。<br />

此 映 射 不 包 含 数 据 结 构 的 位 置 。 数 据 结 构 的 位 置 是 由 运 行 时 装 载 到 基 址 寄 存 器<br />

的 值 确 定 的 。<br />

同 一 映 射 可 以 用 于 描 述 数 据 结 构 的 多 个 实 例 。 它 们 可 以 位 于 存 储 器 中 的 任 何<br />

位 置 。<br />

对 可 用 MOV 指 令 装 载 到 寄 存 器 中 的 地 址 有 一 些 限 制 。 有 关 如 何 装 载 任 意 地 址 的 详<br />

细 信 息 , 请 参 阅 第 2-32 页 的 将 地 址 装 载 到 寄 存 器 中 。<br />

备 注<br />

r9 是 “<strong>ARM</strong>-Thumb 程 序 调 用 标 准 ” 中 的 静 态 基 址 寄 存 器 (sb)。 有 关 详 细 信 息 ,<br />

请 参 阅 <strong>RealView</strong> 编 译 工 具 2.0 版 开 发 人 员 指 南 中 的 使 用 程 序 调 用 标 准 一 章 。<br />

2-54 © 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!