您的位置 首页 IC

ARM指令系统的几点见地(二)

1有效立即数ARM指令集编码中,立即数的只分配了12位空间。==>有效立即数immediate>【有效立即数】=immed_8【8位常数】循环右移(r

1.有用当即数

ARM指令集编码中,当即数的只分配了12位空间。==>有用当即数

【有用当即数】 = immed_8【8位常数】循环右移(rotate_imm【4位循环右移值】 * 2)

例:immed_8 = 0x3f, rotate_imm = 0xe; ==> immediate = 0x3f0【immed_8循环右移[e(14) * 2]28位】

2.跳转指令 B

B{} <== 得到方针地址 target_address

a. 取有符号的24位偏移量

b. 用符号位扩展为32位【符号是1就补1,是0就补0】

c. 左移2位,构成字偏移【这是在ARM系统中,32位】

d. 加到PC寄存器中,得到有用偏移量26位

3.指令比较【前者不保存成果,后者保存成果】

CMP *** SUBSCMN *** ADDS

TST *** ANDS TEQ *** EORS

指令尽管食之无味,但用之则多多益善。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/260044.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部