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> 指 令 参 考<br />

4.3.1 灵 活 的 第 二 操 作 数<br />

大 多 数 <strong>ARM</strong> 通 用 数 据 处 理 指 令 带 有 一 个 灵 活 的 第 二 操 作 数 。 在 描 述 每 个 指 令 的<br />

语 法 时 , 其 显 示 为 Operand2。<br />

语 法<br />

Operand2 具 有 下 列 可 能 的 形 式 :<br />

#immed_8r<br />

Rm{, shift}<br />

其 中 :<br />

immed_8r<br />

Rm<br />

是 取 值 为 数 值 常 数 的 一 个 表 达 式 。 该 常 数 必 须 对 应 于 一 个 8 位 结<br />

构 , 在 一 个 32 位 字 内 循 环 移 位 偶 数 位 而 得 到 ( 但 参 阅 第 4-35 页 的<br />

指 令 替 换 )。<br />

是 存 放 第 二 个 操 作 数 的 数 据 的 <strong>ARM</strong> 寄 存 器 。 寄 存 器 中 的 位 结 构 可<br />

以 用 各 种 方 式 移 位 或 循 环 移 位 。<br />

shift 是 一 个 要 应 用 到 Rm 上 的 可 选 移 位 。 其 可 以 是 下 面 任 一 个 形 式 :<br />

ASR #n 算 术 右 移 n 位 。 1 ≤ n ≤ 32。<br />

LSL #n 逻 辑 左 移 n 位 。 0 ≤ n ≤ 31。<br />

LSR #n 逻 辑 右 移 n 位 。 1 ≤ n ≤ 32。<br />

ROR #n 循 环 右 移 n 位 。 1 ≤ n ≤ 31。<br />

RRX 循 环 右 移 一 位 , 带 扩 展 。<br />

type Rs 其 中 :<br />

type 是 ASR、 LSL、 LSR、 ROR 之 一 。<br />

Rs 是 提 供 移 位 数 的 <strong>ARM</strong> 寄 存 器 。 只 使 用 最 低 有 效<br />

字 节 。<br />

备 注<br />

移 位 运 算 的 结 果 被 用 作 指 令 中 的 Operand2, 但 Rm 本 身 不 变 。<br />

ASR<br />

如 果 把 Rm 看 成 一 个 有 符 号 整 数 的 二 进 制 补 码 , 算 术 右 移 n 位 就 是 把 Rm 除 以 2 n 。<br />

原 来 的 位 [31] 被 复 制 到 寄 存 器 的 左 边 n 位 中 。<br />

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

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

Saved successfully!

Ooh no, something went wrong!