Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Thumb 指 令 参 考<br />
寄 存 器 控 制 的 移 位<br />
这 些 指 令 从 Rd 取 得 值 , 对 其 应 用 移 位 , 并 将 结 果 存 放 回 Rd 中 。<br />
只 有 Rs 的 最 低 有 效 字 节 用 作 移 位 值 。<br />
对 于 除 ROR 外 的 所 有 这 些 指 令 :<br />
• 如 果 移 位 是 32, 则 清 除 Rd, 并 且 被 移 出 的 最 后 一 位 保 存 在 C 标 志 中 ;<br />
• 如 果 移 位 大 于 32, 则 清 除 Rd 和 C 标 志 。<br />
直 接 移 位<br />
这 些 指 令 从 Rm 中 取 得 值 , 对 其 应 用 移 位 , 并 将 结 果 存 放 到 Rd 中 。<br />
条 件 标 志<br />
这 些 指 令 根 据 结 果 更 新 N 和 Z 标 志 。 V 标 志 不 受 影 响 。<br />
C 标 志 :<br />
• 不 受 影 响 ( 如 果 移 位 值 是 零 );<br />
• 否 则 , 包 含 被 移 出 源 寄 存 器 的 最 后 一 位 。<br />
体 系 结 构<br />
这 些 指 令 可 用 在 <strong>ARM</strong> 体 系 结 构 的 所 有 T 变 体 中 。<br />
示 例<br />
ASR r3,r5<br />
LSR r0,r2,#6<br />
LSR r5,r5,av<br />
LSL r0,r4,#0<br />
; av must evaluate, at assembly time, to an<br />
; integer in the range 1-32.<br />
; same as MOV r0,r4 except that C and V<br />
; flags are not affected<br />
不 正 确 的 示 例<br />
ROR r2,r7,#3<br />
LSL r9,r1<br />
LSL r0,r7,#32<br />
ASR r0,r7,#0<br />
; ROR cannot use immediate shift value<br />
; high registers not allowed<br />
; immediate shift out of range<br />
; immediate shift out of range<br />
<strong>ARM</strong> DUI 0204BSC © 2002、 2003 <strong>ARM</strong> Limited 版 权 所 有 。 保 留 所 有 权 利 。 5-25