版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验九 ARM数据处理指令/数据加载存储指令实验1、实验目的掌握基本的数据处理指令使用方法,并能够完成简单的数据处理操作学会使用条件码标志掌握基本的单寄存器传送指令和多寄存器传送指令的使用方法2、实验内容任务一:ARM运算指令的使用 (1)请按以前实验要求创建项目,并添加exp5_1_1.s源文件,文件内容如下,要求补充完整代码:(2)然后再通过单步运行程序,观察相关寄存器和存储器相应地址上的值的变化情况,核对程序的准确性。 任务二:利用数据处理指令实现位处理(1)在项目中删除exp5_1_1.s,并添加exp5_2_1.s源文件,文件内容如下,同样要求补充完整代码,目的在于将0x3FC0的第
2、4-11位用0xDD替换,即变成0x3DD0:(2)然后阅读代码手工计算每一步的执行结果,并填入表1中(注意只需完成START部分的代码即可)。完成后再通过单步运行程序,观察相关寄存器和存储器相应地址上的值的变化情况,核对和之前你在表上填的值是否一致。执行File-Reload Current Image 命令可以重新加载和运行当前映像文件。表1 exp5_2_1.s单步运行结果序号执行指令指令执行后的变化情况(用十六进制表示)寄存器R1R2R3R150-0x00x00x00x800010x3FC00x00x00x800420x3FC00XFF00x00x800830x3FC00XFF00xD
3、D0x800C40x30000Xff00xDD0x801050x30000Xff00xdd00x801460x3dd00xff00xdd00x8018任务三:乘法指令的使用(1)在项目中删除exp5_2_1.s,并添加exp5_3_1.s源文件,文件内容如下,同样要求补充完整代码:(2)然后阅读代码手工计算每一步的执行结果,并填入表2中(注意只需完成START部分的代码即可)。完成后再通过单步运行程序,观察相关寄存器和存储器相应地址上的值的变化情况,核对和之前你在表上填的值是否一致。执行File-Reload Current Image 命令可以重新加载和运行当前映像文件。表2 exp5_3_
4、1.s单步运行结果序号执行指令指令执行后的变化情况(用十六进制表示)寄存器R0R1R2R3R4R5R6R7R8R9R10R150-0x00x00x00x00x00x00x00x00x00x00x00x800010x3F0x800420x3F0x3D0x800830x3F0x3D0Xff0000000x800c40x3f0x3d0xff0000000x3fc00x801050x3f0x3d0xff0000000x3fc00xf030x801460x3f0x3d0xff0000000x3fc00xf420x801870x3f0x3d0xff0000000x3fc00x400000000x801c8
5、0x3f0x3d0xff0000000x3fc00x400000000x3f800x802090x3f0x3d0xff0000000x3fc00x400000000xffffffc00x8024任务四:ARM单寄存器传送指令的使用(1)在项目中删除exp5_3_1.s,并添加exp6_1_1.s源文件,文件内容如下:程序解读:l 程序的功能是将存储器SRC处的源数据通过数据传送指令送到DST处l 代码(2)伪指令ADR是将一个寄存器相关表达式或程序相关表达式的地址存入寄存器,在例子中相当于使R1指向SRC地址,R2指向DST地址,即初始化地址指针;l 代码(3)DCB的作用是分配一组字节内存并
6、定义其内容为指定字符串,也可以用“=”代替。例如:SRC = “one small”DST = “three big”l 代码(4) ALIGN的作用是以字边界对齐当前内存段。注:伪指令并不是ARM的汇编语言,没有相应的机器码,它是由汇编器提供的,在程序中的作用是为程序做准备工作。另外,不同的汇编器支持的伪指令可能不同。(2)请先阅读程序,手工计算每一步的执行结果,并填入表3中(注意只需完成START部分的代码即可)。然后再通过单步运行程序,观察相关寄存器和存储器相应地址上的值的变化情况,核对和之前你在表上填的值是否一致。执行File-Reload Current Image 命令可以重新加载
7、和运行当前映像文件。表3 exp6_1_1.s单步运行结果序号指向指令指令执行后的变化情况寄存器(值用十六进制表示)存储器(值用十六进制表示)R0R1R2PC0x80300x80310x80320x80330x80340x80350x80360x80370x80380x80390-0x00x00x00x80000x740x680x720x650x650x200x620x690x670x2110x80300x800420x803c0x800830x20656e6f0x800c40x80100x6f0x6e0x650x2050x80340x801460x80400x801870x6c616d730
8、x801c80x80200x730x6d0x610x6c90x80440x8024100x8028110x802c任务五:多寄存器存储/加载指令的使用(1)在项目中删除exp6_1_1.s,并添加exp6_2_1.s源文件,文件内容如下:程序解读:l 程序的功能是计算给定数组各项和的平均值,方法是先将数据各项加载到寄存器中,然后利用数据处理指令计算,最后再将结果存入存储器中。l 代码(1)定义一个名为Dblock的数据区域。l 代码(2)伪指令DCD的作用是分配一组字内存并定义其内容,分配的内存一定是4的倍数。也可以用“&”代替,例如:NUM & 0x12 0x34,0x56,0x78(2)请
9、先阅读程序,手工计算每一步的执行结果,并填入表4中(注意只需完成START部分的代码即可)。然后再通过单步运行程序,观察相关寄存器和存储器相应地址上的值的变化情况,核对和之前你在表上填的值是否一致。执行File-Reload Current Image 命令可以重新加载和运行当前映像文件。表4 exp6_2_1.s单步运行结果序号执行指令指令执行后的变化情况寄存器(值用十六进制表示)存储器(值用十六进制表示)R0R1R2R3R4SPPC0x80240x80280x802C0x80300x80380-0x00x00x00x00x00x00x80000x120x340x560x780x1010x0
10、0x00x00x00x00x80240x80040x120x340x560x780x1020x120x340x560x780xe800e8000x80380x80080x 120x340x560x780x1030x120x340x560x780x460x80380x800c0x120x340x560x780x1040x120x340x560x780x9c0x80380x80100x120x340x560x780x1050x120x340x560x780x9c0x80380x80140x120x340x560x780x1060x120x340x560x780x270x80380x80180x120x340x560x780x1070x120x340x560x780x270x803
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《建筑工程施工技术》-单元2 钢筋工程施工
- 财务分析职业规划
- 广东省汕头市名校2026届高一下生物期末质量跟踪监视试题含解析
- 温州乐成寄宿中学2026届数学高一下期末经典模拟试题含解析
- 某齿轮厂设备培训办法
- 年底促销话术模板
- 齿轮厂车间粉尘治理制度
- 医患关系的表现形式
- XX中学2025-2026学年春季学期班主任学生心理疏导工作方案
- 育才初中2026年春季学期教研成果统计及教科研奖励核算说明会
- T-YNESS 003-2024 工业企业环境风险双重预防机制建设技术指南 污染源辨识与分级
- 小学生课件《友善》
- 光伏工程电缆敷设施工方案
- 大学计算机基础-基于计算思维(Windows 10+Office 2016)(第2版)课件 第6章 Excel综合应用
- 夫妻债务约定协议书
- 《乳胶漆的基础知识》课件
- 常微分方程(第三版)名师公开课获奖课件百校联赛一等奖课件
- 《建筑工程计量与计价》中职全套教学课件
- DL-T5588-2021电力系统视频监控系统设计规程
- 平安产险云南省商业性桑蚕养殖保险条款
- 《基层公共卫生服务技术》课件-绪论
评论
0/150
提交评论