- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM資料汇编2003
ARM公司业务模型
ARM体系结构的演化和发展
每一个体系结构上都含有众多的处理器型号,这是在同一体系结构下根据硬件配置和存储器系统的不同而作的进一步细分。 需要注意的是通常我们用来区分 ARM 处理器家族的 ARM7、ARM9 或 ARM10,可能跨越不同的体系结构。
ARM处理器的命名
ARM处理器工作模式
ARM处理器寄存器组
ARM指令举例
SUB r0,r1,#5 ; r0=r1-5
ADD r2,r3,r3, LSL #2 ; r2=r3*5
ANDS r4,r4,#0x20 ; r4=r4 AND 0x20; set flags
ADDEQ r5,r5,r6 ; if EQ, r5=r5+r6
LDR r0,[r1],#4 ; r0 = contents of address pointed to by r1; r1=r1+4
STRNEB r2,[r3,r4] ; if NE contents of byte pointed to by (r3+r4) = r2[7-0]
LDRSH r5,[r6,#8]! ; sign extended r5 = contents of halfword pointed to by (r6+8) and update r6
STMFD sp!,{..regs..} ; stack registers in list,update sp
三级流水线
流水线互锁(LDM)
32位立即数
在ARM指令中,有三个操作数,目的操作数,第一源操作数,第二源操作数,其中最有意思的就是第二源操作数了。第二源操作数共有12位,分成两个部分,一个部分占8位,能表示0-255,另外一个部分占4位,表示第一个部分8位数零扩展成32位的右循环移位,0001右循环移位2位,0010右循环移位4位,以此类推,来扩大用12位表示更大的数,但不能表示全部,这就是所谓的8位位图原理。
ARM处理器的汇编语言中,对指令语法格式中的shifter_operand的常数表达式有这样的规定:“该常数必须对应8位位图,即常数是由一个8位的常数循环移位偶数位得到的。”
当第2 个操作数的形式为:#immed_8r常数表达式时,“该常数必须对应8位位图,即常数是由一个8位的常数循环移位偶数位得到的。”其意思是这样:#immed_8r在芯片处理时表示一个32位数,但是它是由一个8位数(比如即0x5A)通过循环移位偶数位得到(1000 0000 0000 0000 0000 0000 0001 0110,就是0x5A通过循环右移2位(偶数位)的到的)。
为什么要有这样的规定?要从指令编码格式来解释。仔细看表格中的shifter_operand所占的位数:12位。要用一个12位的编码来表示任意的32位数是绝对不可能的(12位数有2^12种可能,而32位数有2^32种)。但是又要用12位的编码来表示32位数,怎么办? 只有在表示数的数量上做限制,通过编码来实现用12位的编码来表示32位数。
在12位的shifter_operand中:8位存数据,4位存移位的次数。8位存数据:解释了“该常数必须对应8位位图”。
4位存移位的次数:解释了为什么只能移偶数位。4位只有16种可能值,而32位数可以循环移位32次(32种可能),那就只好限制:只能移偶数位(两位两位地移,好像一个16位数在移位,16种移位可能)。这样就解决了能表示的情况是实际情况一半的矛盾。
所以对#immed_8r常数表达式的限制是解决指令编码的第二个操作数位数不足以表示32位操作数的无奈之举,这个可以说是聪明的做法。因为如果直接用12位数来表示32位操作数,只能表示0 到(2^12-1),大于(2^12-1)的数就没办法表示了。而且细细想来“8位存数据,4位存移位的次数”,应该是最好的组合了。
1
您可能关注的文档
- AQ20073-2006金屬非金属矿山安全标准化规范__露天矿山实施指南200771.doc
- AQ20073-2006金屬非金属矿山安全标准化规范露天矿山实施指南.doc
- AQ20075-2006金屬非金属矿山安全标准化规范小型露天采石场实施指南.doc
- AQ3013-2008《危險化学品从业单位安全标准化通用规范》.doc
- AQ3022-2008化學品生产单位动火作业安全规范.doc
- AQ4217-2012粉塵采样器技术条件201291.doc
- AQ42192012T焦化行業防尘防毒技术规范.doc
- AQ5206-2011涂裝工程安全评价导则(送审稿).doc
- AQ5216—2013涂料與辅料材料使用安全通则.doc
- AQ7009t-2013機械制造企业安全生产标准化规范.doc
最近下载
- 八年级物理上册第二章第四节噪声的危害和控制.pptx VIP
- 13.3-导游的权利义务及执业管理制度(第7版).pptx VIP
- 智能运维在城市轨道交通供电系统的应用-2022.6.10-高剑锋.pdf VIP
- 北斗系统在交通运输行业应用现状及展望.pptx VIP
- 2025(必威体育精装版)国家开放大学电大本科《公共行政学》机考复习资料 .pdf VIP
- 人教版七年级上册《第一单元 生活中的音乐》大单元整体教学设计.docx
- 25春七下人教版生物默写小纸条--默写版.docx
- 【清华附中】小升初分班考真题-语文.doc VIP
- 六西格玛绿带模拟题复习试题.doc VIP
- 11.1概述(政策与法律法规 第五版).pptx VIP
文档评论(0)