实验2 ARM汇编程序设计SUBmit
《实验2 ARM汇编程序设计SUBmit》由会员分享,可在线阅读,更多相关《实验2 ARM汇编程序设计SUBmit(5页珍藏版)》请在装配图网上搜索。
1、实验2 ARM汇编程序设计1题目:求1+2+3+、+100的和,并将结果送到SUMDATA缓冲区。 要求:采用子程序方式2程序源代码:;* *; NAME: asm1_C.s *; Author: LYM *; Desc: ARM instruction examples *; History: 2012.10.16 ;/*- -*/;/* code */;/*-*/ AREA total, CODE, READONLY ; 声明代码totalENTRY ; 标识程序入口CODE32 ; 声明32 位ARM 指令;.STARTMOV R0, #0 LDR R2, =100 BL SUB_TOT
2、ALSTR R3, SUMDATA ;保存结果到SUMDATASTOP B STOP;.SUB_TOTAL MOV R3, #0REPEAT ADD R0, R0, #1 ADD R3, R3, R0 CMP R0, R2 BNE REPEAT;.DATASUMDATA DCW 0;. END 注意:该在写源代码的时候要注意格式:标号一定要顶格写,而指令不能顶格写。3实验思考题(以实验报告的形式提交)(1) 将以上源代码编译后生成可执行文件,请问可执行文件的扩展名是什么?可执行文件的扩展名是.AXF(2) 以上每一条语句进行编译后都会生成32位的机器码,请根据开发环境写出该源程序的机器程序。E
3、3A00000 MOVE3A02064 MOVEB000001 BLE58F3014 STREAFFFFFE BE3A03000 MOVE2800001 ADDE0833000 ADDE1500002 CMP1AFFFFF BNE(3) 请问该程序安装到内存什么位置?(请指明加载程序的具体地址)oX30000000(4) SUMDATA的地址是什么?0x30000008(5) 工程中有一个DebugINRam.ini启动文件,该启动文件有什么作用?如果编写该程序?文件的作用是把地址指向0x30000000的位置程序:FUNC void Setup (void) / Program Entry
4、Point, .AXF File download Address PC = 0x00000000; /map 0x00000000,0x0200200 READ WRITE execmap 0x30000000,0x30200000 read WRITE execSetup();(6) 在编译前,我们要设置目标的属性(这里的目标TAGET是指可执行文件)。如何启动该目标属性的设置?启动以后,主要要进行target linker debug选项卡设置,请问每个选项卡都如何设置?先进行Build,然后选择ProjectOption for “Target 1”.Target:Linker:Debug:(7)程序运行第一条指令的时候,PC的内容是什么?CPSR寄存器的内容是什么?该值有什么意义?PC=0x30000000;CPSR:000000D3;(8)在调试过程中,如何实现单步调试,断点调试?可以通过插入断点debuginsert/breakpoint(9)用ARM汇编语言编程实现函数:X、Y为32位无符号二进制整数,其中X、Y分别存储在以X_DATA和Y_DATA为首地址的4个存储单元中。
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。