- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式系统实验报告模板
《嵌 入 式 系 统》
实验报告
姓名:
学号:
班级:
湖南工业大学
电气与信息工程学院
2013年4月
实验一 ARM汇编指令实验1
实验目的
初步学会使用Embest IDE for ARM 开发环境及ARM软件模拟器;
通过实验掌握简单ARM汇编指令的使用方法。
实验设备
硬件:PC机;
软件:Embest IDE 200集成开发环境。Windows98/2000/NT/XP。
实验内容
熟悉开发环境的使用,并使用DR/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。
存储器格式
ARM体系结构将存储器看作是从零地址开始的字节的线性组合。字节0~3存放第一个字,字节4~7存放第2个字,以此类推。
ARM体系结构可以用两种方法存储字数据,分别称为大端格式和小端格式。
GNU基础知识
Embest IDE集成了NU汇编器a编译器gcc和链接器ld。因此,编写程序要符合CNU的语法和规则。关于as.gcc和ld的具体使用,请参照Embest IDE所带的电子文档ProgRef.chm实验程序.global _start
.text
_start: /*程序代码开始标志*/
MOV sp, #stack_top
MOV r0, #x /* x的值放入R0 */
STR r0, [sp] /* R0的值保存到堆栈 */
MOV r0, #y /* y的值放入R0 */
LDR r1, [sp] /* 取堆栈中的数到R1 */
ADD r0, r0, r1
STR r0, [sp]
stop:
B stop /*程序结束,进入死循环*/
.end
2. 实验B参考程序
.equ x, 45 /* 定义变量x,并赋值为45*/
.equ y, 64 /* 定义变量y,并赋值为64*/
.equ z, 87 /* 定义变量z,并赋值为87*/
.equ stack_top, 0x1000 /* 定义栈顶0x1000*/
.global _start
.text
_start: /*程序代码开始标志*/
MOV r0, #x /* x的值放入R0 */
MOV r0, r0, lsl #8 /* R0的值乘以2的8次方 */
MOV r1, #y /* y的值放入R1 */
ADD r2, r0, r1, lsr #1 /* R1的值除以2加上r0的值放入R2 */
MOV sp, #0x1000
STR r2, [sp]
MOV r0, #z /* z的值放入R0 */
AND r0, r0, #0xFF /* 取R0的低八位 */
MOV r1, #y /* y的值放入R1 */
ADD r2, r0, r1, lsr #1 /* R1的值除以2加上r0的值放入R2 */
LDR r0, [sp] /* y的值放入R1 */
MOV r1, #0x01
ORR r0, r0, r1
MOV r1, R2 /* y的值放入R1 */
ADD r2, r0, r1, lsr #1 /* R1的值除以2加上r0的值放入R2 */
stop:
B stop /*程序结束,进入死循环*/
.end
六.实验结果及分析
您可能关注的文档
最近下载
- 历史长河中的绍兴.ppt VIP
- 创伤救护技术-中医教学中心.ppt VIP
- 第六章工程项目的国民经济评价.ppt VIP
- 小儿推拿常用手法及穴位-中医课件.ppt VIP
- iec 61000-4-2 静电标准中文版.pdf VIP
- 课件:中医常用穴位指导演示课件.ppt VIP
- UM-71轨道电路检修作业指导书.xlsx VIP
- 中文版 IEC 61000-4-2-2008_(1-63,134)电磁兼容性 (EMC) — 第 4-2 部分:试验和测量技术 - 静电放电抗扰度试验.doc VIP
- 2009年考研数学试题详解及评分参考.pdf VIP
- 在线网课学习课堂《舰艇动力装置》单元测试考核答案.docx VIP
文档评论(0)