(第五讲)嵌入式系统教学教案.ppt

(第五讲)嵌入式系统教学教案.ppt

ID:51322325

大小:1.09 MB

页数:85页

时间:2020-03-22

(第五讲)嵌入式系统教学教案.ppt_第1页
(第五讲)嵌入式系统教学教案.ppt_第2页
(第五讲)嵌入式系统教学教案.ppt_第3页
(第五讲)嵌入式系统教学教案.ppt_第4页
(第五讲)嵌入式系统教学教案.ppt_第5页
资源描述:

《(第五讲)嵌入式系统教学教案.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、ARM指令系统(续)执行校长李伟嵌入式系统与应用(第四讲)助记符说明操作条件码位置MULRd,Rm,Rs32位乘法指令Rd←Rm*Rs(Rd≠Rm)MUL{cond}{S}MLARd,Rm,Rs,Rn32位乘加指令Rd←Rm*Rs+Rn(Rd≠Rm)MLA{cond}{S}UMULLRdLo,RdHi,Rm,Rs64位无符号乘法指令(RdLo,RdHi)←Rm*RsUMULL{cond}{S}UMLALRdLo,RdHi,Rm,Rs64位无符号乘加指令(RdLo,RdHi)←Rm*Rs+(RdLo,RdHi)UMLA

2、L{cond}{S}SMULLRdLo,RdHi,Rm,Rs64位有符号乘法指令(RdLo,RdHi)←Rm*RsSMULL{cond}{S}SMLALRdLo,RdHi,Rm,Rs64位有符号乘加指令(RdLo,RdHi)←Rm*Rs+(RdLo,RdHi)SMLAL{cond}{S}ARM指令——乘法指令64位有符号乘加指令——SMLAL指令将Rm和Rs中的值作有符号数相乘,64位乘积与RdHi、RdLo相加,结果的低32位保存到RdLo中,而高32位保存到RdHi中。指令格式如下:SMLAL{cond}{S}R

3、dLo,RdHi,Rm,Rs应用示例:SMLALR2,R3,R7,R6;(R3、R2)=R7×R6+(R3、R2)在ARM中有两种方式可以实现程序的跳转,一种是使用分支指令直接跳转,另一种则是直接向PC寄存器赋值实现跳转。分支指令有以下三种:分支指令B;带链接的分支指令BL;带状态切换的分支指令BX。ARM指令集——分支指令助记符说明操作条件码位置Blabel分支指令PC←labelB{cond}BLlabel带链接的分支指令LR←PC-4,PC←labelBL{cond}BXRm带状态切换的分支指令PC←label

4、,切换处理器状态BX{cond}分支指令——B指令,该指令跳转范围限制在当前指令的±32M字节地址内(ARM指令为字对齐,最低2位地址固定为0)。指令格式如下:B{cond}Label应用示例:BWAITA;跳转到WAITA标号处B0x1234;跳转到绝对地址0x1234处ARM指令集——分支指令BLLabelxxxxxxLabelxxxMOVPC,LRAddr1Addr2xxxxxxLRPC助记符说明操作条件码位置Blabel分支指令PC←labelB{cond}BLlabel带链接的分支指令LR←PC-4,PC←

5、labelBL{cond}BXRm带状态切换的分支指令PC←label,切换处理器状态BX{cond}带链接的分支指令——BL指令适用于子程序调用,使用该指令后,下一条指令的地址被拷贝到R14(即LR)连接寄存器中,然后跳转到指定地址运行程序。跳转范围限制在当前指令的±32M字节地址内。指令格式如下:BL{cond}LabelAddr1LabelAddr2Addr21.当程序执行到BL跳转指令时,硬件将下一条指令的地址Addr2装入LR寄存器,并把跳转地址装入程序计数器(PC)2.程序跳转到目标地址Label继续执行

6、,当子程序执行结束后,将LR寄存器内容存入PC,返回调用函数继续执行ARM指令集——分支指令助记符说明操作条件码位置Blabel分支指令PC←labelB{cond}BLlabel带链接的分支指令LR←PC-4,PC←labelBL{cond}BXRm带状态切换的分支指令PC←label,切换处理器状态BX{cond}带链接的分支指令——BL指令适用于子程序调用,使用该指令后,下一条指令的地址被拷贝到R14(即LR)连接寄存器中,然后跳转到指定地址运行程序。跳转范围限制在当前指令的±32M字节地址内。指令格式如下:B

7、L{cond}Label应用示例:BLDELAY;调用子程序DELAYARM指令集——分支指令助记符说明操作条件码位置Blabel分支指令PC←labelB{cond}BLlabel带链接的分支指令LR←PC-4,PC←labelBL{cond}BXRm带状态切换的分支指令PC←label,切换处理器状态BX{cond}带状态切换的分支指令——BX指令,该指令可以根据跳转地址(Rm)的最低位来切换处理器状态。其跳转范围限制在当前指令的±32M字节地址内(ARM指令为字对齐,最低2位地址固定为0)。指令格式如下:BX{

8、cond}Rm跳转地址Rm[0]跳转后CPSR标志T位处理器状态00ARM11ThumbARM指令集——分支指令助记符说明操作条件码位置Blabel分支指令PC←labelB{cond}BLlabel带链接的分支指令LR←PC-4,PC←labelBL{cond}BXRm带状态切换的分支指令PC←label,切换处理器状态BX{cond}带状态

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。