文档详情

实验2 顺序与分支汇编语言程序设计实验.pdf

发布:2017-05-23约5.1千字共15页下载文档
文本预览下载声明
ARM 技术原理与应用 实验报告 实验2 顺序与分支汇编语言程序设计实验 专 业 电子信息工程 班 级 14 电信班 学生姓名 陈定光 学 号 2014010243101 指导教师 曹计昌 2017 年 4 月 19 日 1 实验2 顺序与分支汇编语言程序设计实验 1、实验目的 (1)掌握顺序结构汇编语言程序设计; (2)掌握分支结构汇编语言程序设计; (3)掌握AXD 环境下顺序结构和分支结构汇编语言程序的运行、调试。 2、实验要求 1、实验必须在在ADS1.2 环境下进行。 2、工程名、汇编语言源文件名按照下面规则命名: 工程名:pj+学号最后4 位+其它字符 汇编语言源文件名:p+学号最后4 位+其它字符+.s 例如:张维智同学学号最后4 位是3134 因此,pj3134、pj3134a、pj31341 等都是允许的工程名;而 p3134a.s、p3134b.s 等都是允 许的源文件名。 3、实验报告中需要说明实验中在ADS、AXD 环境下进行的实际操作; 4、实验报告中应给出实际的实验操作、编写的源程序、及计算机的调试观察结果; 5、按照规定格式打印实验报告。 3、实验内容 1、编写程序p2xxxx1.s 完成下面任务: (1) 将1、2、3、4、5、6、7、8 依次传送给寄存器R1-R8; 分析:如上图显示,寄存器r1-r8 分别是存放1-8 (2) 用STMIA 指令将R1-R8 保存到刚好能够存储8 个字数据ARY_A 数组中。 分析:如上图显示,地址0x8058-0x8078 分别存放1-8 2 (3) 用STMIB 指令将R1-R8 保存到刚好能够存储8 个字数据ARY_B 数组中。 分析:如上图显示,地址0x8088-0x80A7 分别存放1-8 (4) 用STMDA 指令将R1-R8 保存到刚好能够存储8 个字数据ARY_C 数组中。 分析:如上图显示,地址0x8094-0x80B3 分别存放1-8 (5) 用STMDB 指令将R1-R8 保存到刚好能够存储8 个字数据ARY_D 数组中。 3 (6) 用LDMIA 指令将ARY_A 数组中数据5、6、7、8 传送到R1-R4 寄存器。 分析:如上图图中的方框图的数据显示,r1=5,r2=5,r3=7,r4=8 (7) 用LDMIB 指令将ARY_A 数组中数据1、2、3、4 传送到R5-R8 寄存器。 分析:如上图图中的方框图的数据显示,r5=1,r6=2,r7=3,r8=4 2、编写程序p2xxxx2.s 完成下面任务: (1) 创建由10 个字元素的满递减堆栈。并将SP 指向栈底。 4 分析:如上图显示,寄存器 r0-r9 分别存放 0-9 一共 10 元素,同时地址 0Xffffffd8-0xffffffff 分别存放着0-9,SP 指向栈底 (2) 将1、2、3、4、5、6、7、8 依次传送给寄存器R1-R8,再用STMFD 指令将R1-R8 寄存器压栈。观察堆栈数据和SP。 分析:如上图显示,寄存器r1-r8 分别存放1-8 分析:用 STMFD 指令将 R1-R8 寄存器压栈,如上图显示,地址 0xffffffe0-oxfffffff 分别存放1-8,每个数字4 位 (3) 用LDMFD 指令将栈中8 个数据依次出栈并传送给R3-R10 寄存器。 5 分析:如上图显示,寄存器r3-r10 分别存放1-8 3、编写程序p2xxxx3.s 完成下面任务: (1) 开放IRQ 向量中断,N 标志置1;并
显示全部
相似文档