实验二 ADS下简单ARM 汇编程序实验 实验目的: 1、 熟悉ADS1.2 下进行汇编语言程序设计的基本流程; 2、 熟悉在ADS 中创建工程及编写、编译和运行汇编语言程序的方法; 3、 熟悉AXD 中各种调试功能。 实验环境: 1、 硬件:PC 机。 2、 软件ADS1.2。 实验内容: 1、 在ADS 中新建工程,并设置开发环境。 2、 在Code Warrior 环境中编辑、编译和链接汇编语言程序,并生成可执行文件。 3、 在AXD 中调试汇编程序; 4、 使用命令行界面编辑、编译和链接汇编程序。 实验过程: 本实验要求在ADS 环境下,编写一个汇编程序,计算S=1+2+3……+n 的累加值。 把累加结果 S 存入到存储器的指定位置;在AXD 中调试该程序,使用ARMulator 模拟目标机。 1、 新建工程。 打开Code Warrior,选择 File->New(project)选项,使用ARM Executable Image 模版新建一个工程。 2、设置编译和链接选项。 由于我们使用的是模拟机,设置汇编语言编译器的模拟处理器架构为 Xscale;在 ARM Linker中,选择 ou tpu t 选项卡并选择 Linkty pe 为 Simple 类型,确认 RO Base 为 0x 8000,修改 RW Base 为 0x 9000 ,如下图所示。 3、 为当前工程添加源程序文件。 ARM 汇编程序源文件后缀名为 S 大小写均可。 确保添加入当前工程复选框选上。 4、 编辑源程序代码。 参考程序 add.s : ;armadd 源程序 N EQU 7 ;累加次数 ;定义名为 Adding 的代码段 AREA Adding,CODE,READONLY ENTRY MOV R0,#0 MOV R1,#1 REPEAT ADD R0,R0,R1 ADD R1,R1,#1 CMP R1,#N BLE REPEAT LDR R2,=RESULT STR R0,[R2] HERE B HERE 定义名为 Dataspace 的数据段 AREA Dataspace,DATA,READWRITE RESULT DCD 0 END 5、 编译汇编源代码文件。 右击 add.S 文件,选择 Compile,如果没有成功会弹出错误和警告窗口。 生成.O 目标代码文件。 6、 编译整个工程。 选择ProjectMake进行整个工程的编译。可以在目录空间查看是否生成了映像文件 add.ax f。 7 、 确认调试目标设置。 设置目标处理器型号。 8 、 运行映像文件。 选择如图所示按钮运行映像文件,运行结果如下 9、 调试准备 在 AXD 中,打开各个观察窗口,做调试准备。选择Processor ViewsRegisters 选项,打开ARM寄存器显示窗口。调整窗口大小,使得 Corrent 节点的R0~R2寄存器可见。...