- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM实验报告ARM
PAGE 4
XI`AN TECHNOLOGICAL UNIVERSITY
实验报告
实验课程名称 ARM嵌入式系统原理及其应用开发
专 业: 物联网工程
班 级:
姓 名: 田宇龙
学 号: 16060616107
实验学时:
指导教师:
成 绩:
2018 年 6 月 18 日
西安工业大学实验报告
专业
物联网工程
班级
16
姓名
田宇龙
学号
16060616107
实验课程
ARM汇编实验
指导教师
实验日期
2018
同实验者
实验项目
ARM汇编指令实验
实验设备及器材
PC机、Embest IDE Pro 2004集成开发环境,windows xp
一丶实验目的
初步学会使用Embest IDE for ARM开发环境及ARM软件模拟器。
通过实验掌握简单ARM汇编指令的使用方法。
实验内容
熟悉开发环境的使用并使用ldr/str,mov等指令访问寄存器或存储单元。
使用add/sub/lsl/lsr/and/orr等指令,完成基本数学/逻辑运算。
实验原理
ARM 处理器共有 37 个寄存器:
31 个通用寄存器,包括程序计数器(PC)。这些寄存器都是 32 位的。
6 个状态寄存器。这些寄存器也是 32 位的,但是只是使用了其中的 12 位。
ARM 通用寄存器
通用寄存器(R0~R15)可分为 3 类:
不分组寄存器 R0~R7;
分组寄存器 R8~R14;
程序计数器 R15;
1) 不分组寄存器 R0~R7;
R0~R7 是不分组寄存器。这意味着在所有处理器模式下,它们每一个都访问一样的 32 位寄存器。它们是真正的通用寄存器,没有体系结构所隐含的特殊用途。
分组寄存器 R8~R14
R8~R14 是分组寄存器。它们每一个访问的物理寄存器取决于当前的处理器模式。若要访问特定的物理寄存器而不依赖当前的处理器模式,则要使用规定的名字。
寄存器 R8~R12 各有两组物理寄存器:一组为 FIQ 模式,另一组为除了 FIQ 以外的 所有模式。寄存器 R8~R12 没有任何指定的特殊用途。只是使用 R8~R14 来简单地处理 中断。寄存器 R13,R14 各有 6 个分组的物理寄存器。1 个用于用户模式和系统模式,其它 5 个分别用于 5 种异常模式。寄存器 R13 通常用做堆栈指针,称为 SP。每种异常模式都有 自己的 R13。寄存器 R14 用作子程序链接寄存器,也称为 LR。
3) 程序计数器 R15
寄存器 R15 用做程序计数器 (PC)。
在本实验中,我们认为 ARM 核工作在用户模式 ,R0~R15 可用。
实验过程
打开Embest IDE Pro软件,选择菜单项File--New Workspace,系统弹出对话框,点击OK创建名为TEXT的新工程,并同时创建一个与工程名相同的工作区。此时在工作窗口将打开该工作区和工程。
建立源文件:
点击菜单项File--New,系统弹出一个新的、没有标题的文本编辑窗,输入光标位玉窗口中第一行,将程序所需的源文件代码输入,编辑完后,进行保存,保存文件格式为_a.s文件。
添加源文件:
选择Project--Add To Project--File命令,弹出文件选择对话框,在工程目录下选择刚才建立的_a.s格式的源文件
基本配置:
选择菜单项Project--Settings,弹出工程设置对话框,在工程设置对话框中,选择Processor设置对话框,选择ARM7对目标板所用处理器进行配置。
生成目标代码:
选择菜单项Build--Build xxx_a.s,生成目标代码。
调试设置:
使用快捷键Alt+F7,弹出设置对话框,在工程设置对话框中,选择Remote设置对话框,对相应模块进行配置。
选择Debug菜单Remote Connect 进行连接软件仿真器,执行Download命令下载程序,并打开寄存器窗口。打开memory窗口,观察相关内容的变化。
实验程序
编写程序循环对R4-R11进行累加8次赋值,R4-R11起始值为1-8,每次加操作后把R4-R11的内容放入SP栈中,SP初始设置为0x800,最后把R4-R11 用LDMFD指令清空赋值为0
具体程序源代码如下:
.global start ;定义全局变量START
.text ;定义文本
原创力文档


文档评论(0)