ARM指令集与汇编编程基础教程.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

作者:粤嵌.温子祺

【难度系数】:★★★☆☆

作者:温子祺

一、概述

二、ARM的指令集

三、汇编编写文件格式

一、概述

汇编更接近机器语言,能够直接对硬件进行操作(例如堆栈的初始化),生成的程序与其他的

语言相比具有更高的运行速度,占用更小的内存,因此在一些对于时效性要求很高的程序、许多大型

程序的模块以及工业控制方面大量应用。但是汇编也有很明显的缺点,移植性很差,不同的

汇编指令格式各不一样。

感受一下C语言与汇编语言之间的关系

二、ARM的指令集

作者:粤嵌.温子祺

【难度系数】:★★★☆☆

作者:温子祺

一、概述

二、ARM的指令集

三、汇编编写文件格式

一、概述

汇编更接近机器语言,能够直接对硬件进行操作(例如堆栈的初始化),生成的程序与其他的

语言相比具有更高的运行速度,占用更小的内存,因此在一些对于时效性要求很高的程序、许多大型

程序的模块以及工业控制方面大量应用。但是汇编也有很明显的缺点,移植性很差,不同的

汇编指令格式各不一样。

感受一下C语言与汇编语言之间的关系

二、ARM的指令集

寄存器就当做是给我们的全局32位变量r0~r15,但是能够给我们使用的话r0~r12,r13

用于堆栈指针,r14用于子程序的返回地址,r15用于记录当前程序的执行位置。

1.数据处理指令

数据传输指令=

算术逻辑运算指令

算术+-×

逻辑|^~

比较==

2.数据处理指令的寻址方式.立即数寻址

movr0,#0x10.寄存器寻址mov

r0,r1.寄存器偏移寻址mov

r1,r2,lsl#2

3.加载(Load)和(Store)指令

.单寄存器操作指令

.寄存器间接寻址.

基址变址寻址

.多寄存器操作指令.出栈(恢复现场)和

压栈(保护现场).寄存器列表

.跳转指令.调用子

程序bl.跳转到某

个位置b.函数返

回bxlr

其他指令,请参考《ARM指令速查手册.pdf》和《ARM的指令集.ppt》。

三、汇编编写文件格式

寄存器就当做是给我们的全局32位变量r0~r15,但是能够给我们使用的话r0~r12,r13

用于堆栈指针,r14用于子程序的返回地址,r15用于记录当前程序的执行位置。

1.数据处理指令

数据传输指令=

算术逻辑运算指令

算术+-×

逻辑|^~

比较==

2.数据处理指令的寻址方式

.立即数寻址movr0,#0x10

.寄存器寻址movr0,r1

.寄存器偏移寻址movr1,r2,lsl#2

3.加载(Load)和(Store)指令

.单寄存器操作指令

.寄存器间接寻址

.基址变址寻址

.多寄存器操作指令

.出栈(恢复现场)和压栈(保护现场)

.寄存器列表

.跳转指令

.调用子程序bl

.跳转到某个位置b

.函数返回bxlr

其他指令,就参考ARM指令速查手册.pdf与ARM的指令集.ppt。

三、汇编编写文件格式

1‑‑‑‑‑‑‑‑‑‑

‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑

2.文本34//

代码部分567.

结束8‑‑‑‑‑‑‑‑‑‑

‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑

2.如果当前汇编文件作为第一个执行的文件,格式必须如下:

1‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑2.文本3.全局

__

开始4开始:5//代码部分67.结束8‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑

文档评论(0)

zhishifuwu + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档