23.10.2014 Views

RealView - ARM Information Center

RealView - ARM Information Center

RealView - 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> 和 Thumb 汇 编 语 言<br />

2.7 将 地 址 装 载 到 寄 存 器 中<br />

经 常 需 要 将 一 个 地 址 装 载 到 一 个 寄 存 器 中 。 可 能 需 要 装 载 变 量 、 字 符 串 常 数 或 跳<br />

转 表 开 始 位 置 的 地 址 。<br />

地 址 通 常 表 示 为 从 当 前 程 序 计 数 器 或 其 它 寄 存 器 开 始 的 偏 移 量 。<br />

这 一 节 介 绍 将 地 址 装 载 到 寄 存 器 中 的 下 列 方 法 :<br />

• 直 接 装 载 寄 存 器 , 请 参 阅 用 ADR 和 ADRL 直 接 装 载 ;<br />

• 从 一 个 文 字 池 装 载 地 址 , 请 参 阅 第 2-37 页 的 用 LDR Rd, = label 装 载 地 址 。<br />

2.7.1 用 ADR 和 ADRL 直 接 装 载<br />

ADR 和 ADRL 伪 指 令 可 以 生 成 某 个 确 定 范 围 内 的 地 址 , 而 无 需 执 行 数 据 装 载 操 作 。<br />

ADR 和 ADRL 接 受 以 下 两 种 值 之 一 :<br />

• 一 个 相 对 于 程 序 的 表 达 式 , 这 是 带 有 可 选 偏 移 量 的 一 个 标 号 , 其 中 标 号 地<br />

址 是 相 对 于 当 前 程 序 计 数 器 的 ;<br />

• 一 个 相 对 于 寄 存 器 的 表 达 式 , 这 是 带 有 可 选 偏 移 量 的 一 个 标 号 , 其 中 标 号<br />

地 址 是 相 对 于 存 放 在 指 定 的 通 用 寄 存 器 中 的 地 址 的 。 有 关 指 定 相 对 寄 存 器<br />

表 达 式 的 信 息 , 请 参 阅 第 2-53 页 的 用 MAP 和 FIELD 命 令 描 述 数 据 结 构 。<br />

通 过 生 成 以 下 指 令 或 消 息 , 汇 编 程 序 转 换 一 条 ADR rn,label 伪 指 令 :<br />

• 如 果 地 址 在 范 围 内 , 则 生 成 装 载 该 地 址 的 单 个 ADD 或 SUB 指 令 ;<br />

• 如 果 不 能 在 单 个 指 令 中 访 问 到 该 地 址 , 则 生 成 一 条 出 错 消 息 。<br />

对 于 相 对 非 字 对 齐 地 址 的 偏 移 , 偏 移 量 范 围 是 ±255 字 节 ; 对 于 相 对 字 对 齐 地 址<br />

的 偏 移 , 偏 移 量 范 围 是 ±1020 字 节 (255 字 )。( 对 于 Thumb 状 态 , 地 址 必 须 是<br />

字 对 齐 的 , 并 且 偏 移 量 必 须 是 正 值 。)<br />

通 过 生 成 以 下 指 令 或 消 息 , 汇 编 程 序 转 换 一 条 ADRL rn,label 伪 指 令 :<br />

• 如 果 地 址 在 范 围 内 , 则 生 成 两 个 装 载 地 址 的 数 据 处 理 指 令 ;<br />

• 如 果 不 能 在 两 个 指 令 中 构 造 该 地 址 , 则 生 成 一 条 出 错 消 息 。<br />

对 于 非 字 对 齐 地 址 , ADRL 伪 指 令 的 范 围 是 ±64KB ; 对 于 字 对 齐 地 址 , 其 范 围 是<br />

±256KB。( 没 有 用 于 Thumb 状 态 的 ADRL 伪 指 令 。)<br />

如 果 成 功 的 话 , ADRL 汇 编 为 两 条 指 令 。 即 使 可 以 在 单 条 指 令 中 装 载 该 地 址 , 汇<br />

编 程 序 也 产 生 两 条 指 令 。<br />

有 关 装 载 超 出 ADRL 伪 指 令 范 围 的 地 址 的 信 息 , 请 参 阅 第 2-37 页 的 用 LDR Rd, =<br />

label 装 载 地 址 。<br />

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