- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
----WORD格式
----WORD格式--可编辑----
嵌入式实验报告
班级:电信工 x班 姓名:XXX 学号:xxx
实验一、arm汇编指令实验-简单数据搬移实验
实验目的:
熟悉实验开发环境掌握简单arm汇编的使用方
实验内容熟悉开发环境并使用ldr /str,mov寄存器或存储单元;使用
实验内容
熟悉开发环境并使用ldr /str,mov
寄存器或存储单元;
使用 ads/sub/lsl/lsr/a nd/orr
成基本数学 /逻辑运算。
实验要求
(1)按照前面叙述介绍的方法,在
仓建一个工程 asmlabl,
堆
等指令访问
等指令完
ads下
定义两个
x,和
y
栈地址Ox1QPO,将变量x的内容存到堆栈顶, 然后计算x+y,并将和存到堆栈
的下一个单兀。
通过axd查看寄存器和 memory和寄存器中数据的变化
在指令后面加上适当注释,说明指令功能。
指出程序执行后各相关寄存器及存储 器单元的具体内容。程序代码截图如下:
程序运行结果截图:
由实验结果可知堆栈的第二个单元中存放了 x+y的值6d
max变量
max变量
编写程序实现对一段数据的最大值和最小值搜索, 最大值存在于
之中,最小值存
在于min变量之中。提示:数据的定义采用伪指令: dcd来实现。
基本思路:利用r0做基地址,将r1 , r2分别放入第一单元的内容, 利用
r3做循环计数,
利用r4遍历读取第 2至最后一个数据,如果 r1的数据小于
新读入的 r4数据则将 r4的内容
存入r1,如果r2的内容大于 r4的内容则将 r4的内容存入
r2,。遍历完成之后, r1将存放
最大数据,r2将存放最小数据
程序代码截图如下:
程序运行结果截图: 实验二arm汇编指令实验 2-字符串拷贝实验
实验目的
通过实验掌握使用 ldb/stb , b等指令完成较为复杂的存储区访问和程序分
支,学会使用 条件码。
实验内容熟悉开发环境的使用并完成一块存储区的拷贝。
完成分支程序设计,要求判断参数,根据不同参数,调用不同的子程序。
实验要求
按照2.3节介绍的方法, 在ads下创建一个工程 asmab2
定义两个数据存储区 src
和dst , src用于存放原字符串, dst用于存放目的字符
串。堆栈地址 0x400,将变量原字
符串的内容拷贝到目的字符串中,要能判断原字符串的结束符( 0),并统计
字符串的个数。
通过axd查看寄存器和 memory和寄存器中数据的变化。
(2) 在指令后面加上适当注释,说明指令功能。
(3) 指出程序执行完后各相关寄存器及存 储器单元的具体内容。程序代码截图如下:
程序运行结果源字符串
程序运行结果
源字符串
符串复制后两个数
存储区
src:0x80和dst:0x80中的数据情况
40 47
实验三arm汇编指令实验 3-arm处理器工作模式实验 实验
目的
(1) 通过实验掌握学会使用 msr/mrs指令实现arm处理器工作模 式的切换,观察不同模式下的寄存器,加深对 cpu结构的理解;
(2) 通过实验掌握ld中如何使用命令指定代码段起始地址。
实验内容
通过arm汇编指令,在各种处理器模式下切换并观察各种模式下寄存器的区
另ij; 掌握arm
不同模式的进入与退出。
实验要求
(1) 按照2.3节介绍的方法, 在ads下创建一个工程 asmmodelab完成各个 模式下的堆
栈初始化工作,并将一 r1-r12 一、、 的内容存入当前模式下堆
栈。通过 axd运用单步执行方式调
用程序,验证工作的模式,使用寄存器观察切换到不同的工作模式下观察 sp
(r13 )的变化
情况。
(2) 实验过程中请记录并思考以下内容:
)程序复位之后系统处于什么模式?
)记录每种模式下的厨师堆栈指针,以及执行 r1-r12内容压栈后本模式堆
栈相关内存
单一
元的数值。并分析快速 中断fiq
)换到其他模式 〔
4果能的话 堆
栈区域的变化情况。
观察本程序模式切换 spsr有无变化, 5过程中
程序运行结果截图:
模式与其他模式
户模式
切换成用户模式之后还能否从
用尸模式下能否执行堆栈压栈操作?如
r1-r12有什么不
观察用户模式下压栈之
刖和之后其
并解释
^原
r1-r12内容压栈后本模6
r1-r12内容压栈后本模
式堆栈相关每种模式下的初始堆栈指针以及执行 存单
r1-r12有什么元的数值。并分析快速中断fiq
r1-r12有什么
即管理模式的栈顶指针为
0x8240
满递减模门. 式,
r12
(中断模式)
指后为管理模式栈
;x82 距
0x3入12个字
0,
观r13,中断模式的堆栈地址为
察
0x8340满递减模r1-r12顶栈针为中断模式栈0x831
0x8340
满递减
原创力文档


文档评论(0)