- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ARM汇编指令存储区返拿问及程序分支
昆明理工大学信息工程与自动化学院学生实验报告
( 2012 — 2013 学年 第 2 学期 )
课程名称:嵌入式技术及应用 开课实验室:信自楼443 2013年04月
专业、年级、班 计科101 学号 姓名 成绩 实验项目名称 ARM汇编指令存储区访问及程序分支 指导教师 万小容
教师评语
该同学是否了解实验原理: A.了解□ B.基本了解□ C.不了解□
该同学的实验能力: A.强 □ B.中等 □ C.差 □
该同学的实验是否达到要求: A.达到□ B.基本达到□ C.未达到□
实验报告是否规范: A.规范□ B.基本规范□ C.不规范□
实验过程是否详细记录: A.详细□ B.一般 □ C.没有 □
教师签名:
年 月 日
一、实验目的及内容
1、编写程序循环对R4~R11进行8次赋值。R4~R11起始值为1~8,每次加操作后,把R4~R11的内容放入SP栈中,SP初始设置为0x800。最后把R4~R11用LDMFD指令清空赋值为0。
2、通过实验掌握使用ldm/stm,b,bl等指令完成较为复杂的存储区访问及程序分支,学习使用条件码,加强对CPSR的认识
3、单步调试,截图并用文字说明。
4、要有实验总结。
二、实验原理及基本技术路线图(方框原理图或程序流程图)
ARM通用寄存器(R0-R15)可分为三类:
1、不分组寄存器R0-R7;
不分组寄存器R0~R7在所有处理器模式下,它们每一个都访问一样的32位寄存器。它们是真正的通用寄存器,没有体系结构所隐含的特殊用途。
2、分组寄存器 R8-R14;
分组寄存器R8~R14对应的物理寄存器取决于当前的处理器模式。若要访问特定的物理寄存器而不依赖当前的处理器模式,则要使用规定的名字。寄存器R8~R12各有两组物理寄存器:一组为FIQ模式,另一组为除了FIQ以外的所有模式。
寄存器R8~R12没有任何指定的特殊用途,只是在作快速中断处理时使用。寄存器R13、R14各对应6个分组的物理寄存器,1个用于用户模式和系统模式,其它5个分别用于5种异常模式。寄存器R13通常用做堆栈指针,称为SP;寄存器R14用作子程序链接寄存器,也称为LR。
3、程序计数器R15。
寄存器R15用做程序计数器 (PC)。
在本实验中,ARM 核工作在用户模式,R0~R15可用。
本实验涉及到的汇编指令语法及规则:
ldr
ldr伪指令将一个32位的常数或者一个地址值读取到寄存器中。当需要读取到寄存器中的数据超过了mov或者mnv指令可以操作的范围时,可以使用ldr伪指令将该数据读取到寄存器中。在汇编编译器处理源程序时,如果该常数没有超过mov或者mnv可以操作的范围,则ldr指令被这两条指令中的一条所替代,否则,该常数将被放在最近的一个文字池内(literal pool),同时,本指令被一条基于PC的ldr指令替代。
语法格式:
ldr register , = expression
其中,expression为需要读取的32位常数;register为目标寄存器。
三、所用仪器、材料(设备名称、型号、规格等或使用软件)
PC一台、Embest IDE集成开发环境。
四、实验方法、步骤(或:程序代码或操作过程)
.equ stack_top, 0x800
.equ loop_time, 0x8
.global _start
.text
_start:
/**//* 设置寄存器初始值 */
ldr r0, =reg_init
ldmia r0!, {r4-r11}
/**//* 设置栈顶初始值 */
mov sp, #stack_top
/**//* 循环 8 次 */
mov r0, #loop_time
loop:
/**//* 累加 */
add r4, r4, #0x1
add r5, r5, #0x1
add r6, r6, #0x1
add r7, r7, #0x1
add r8, r8, #0x1
add r9, r9, #0x1
add r10, r10, #0x1
add r11, r11, #0x1
您可能关注的文档
最近下载
- 中船科技(600072)公司2023年财务分析研究报告.doc
- 中国书法简介英语版-chinese-calligraphy(完整版).ppt
- 2025年供电营业规则考试题库.pdf
- 六个寻找剧作家的人_经典戏剧剧本.pdf
- 丙烯酸乙酯安全技术说明书(MSDS).pdf VIP
- 2024年供应链管理师(一级)资格考试复习题库(含答案).docx
- 精品解析:2025届广东省珠海市等三地高三上学期一模物理试题(解析版).docx VIP
- 财政知识普及课件.pptx VIP
- 2025届广东省珠海市等三地高三年级上册一模物理试题(含答案解析).pdf VIP
- 新22J09 附属建筑-标准图集.docx VIP
文档评论(0)