实验一-ARM-汇编指令.doc

实验一-ARM-汇编指令.doc

ID:59357293

大小:74.50 KB

页数:6页

时间:2020-09-04

实验一-ARM-汇编指令.doc_第1页
实验一-ARM-汇编指令.doc_第2页
实验一-ARM-汇编指令.doc_第3页
实验一-ARM-汇编指令.doc_第4页
实验一-ARM-汇编指令.doc_第5页
资源描述:

《实验一-ARM-汇编指令.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验一ARM汇编指令1.1实验目的?初步学会使用EmbestIDEforARM开发环境及ARM软件模拟器;?通过实验掌握简单ARM汇编指令的使用方法。1.2实验设备?硬件:PC机?软件:EmbestIDEProARM集成开发环境,Windows98/2000/NT/XP。1.3实验内容?熟悉开发环境的使用并使用ldr/str,mov等指令访问寄存器或存储单元。?使用add/sub/lsl/lsr/and/orr等指令,完成基本数学/逻辑运算。1.4实验原理ARM处理器共有37个寄存器:?31个通用寄存器,包括程序计数器(PC)。这些寄存器都是32位的。?6个状态寄存器

2、。这些寄存器也是32位的,但是只是使用了其中的12位。这里简要介绍通用寄存器,关于状态寄存器的介绍,请参照下一节。1.ARM通用寄存器通用寄存器(R0~R15)可分为3类:不分组寄存器R0~R7;分组寄存器R8~R14;程序计数器R15;1)不分组寄存器R0~R7;R0~R7是不分组寄存器。这意味着在所有处理器模式下,它们每一个都访问一样的32位寄存器。它们是真正的通用寄存器,没有体系结构所隐含的特殊用途。2)分组寄存器R8~R14R8~R14是分组寄存器。它们每一个访问的物理寄存器取决于当前的处理器模式。若要访问特定的物理寄存器而不依赖当前的处理器模式,则要使用规定

3、的名字。寄存器R8~R12各有两组物理寄存器:一组为FIQ模式,另一组为除了FIQ以外的所有模式。寄存器R8~R12没有任何指定的特殊用途。只是使用R8~R14来简单地处理中断。寄存器R13,R14各有6个分组的物理寄存器。1个用于用户模式和系统模式,其它5个分别用于5种异常模式。寄存器R13通常用做堆栈指针,称为SP。每种异常模式都有自己的R13。寄存器R14用作子程序链接寄存器,也称为LR。3)程序计数器R15寄存器R15用做程序计数器(PC)。在本实验中,我们认为ARM核工作在用户模式,R0~R15可用。2.存储器格式ARM体系结构将存储器看作是从零地址开始的字

4、节的线性组合。字节零到字节三放置第一个字(WORD),字节四到字节七存储第二个字,以此类推。ARM体系结构可以用两种方法存储字数据,分别称为大端格式和小端格式。3.GNU基础知识EmbestIDE集成了GNU汇编器as,编译器gcc,链接器ld。因此,我们写程序要符合GNU的语法和规则。关于as、gcc和ld的具体使用,请参照EmbestIDE所带的电子文档ProgRef.chm,在此不再赘述。这里简单介绍几点基本知识:1)程序默认入口点为“_start”,代码段默认起始地址为0x80002)as常用伪操作符.equ.equ伪操作为数字常量、基于寄存器的值和程序中的标

5、号定义一个字符名称。语法格式.equsymbol,expr其中,expr为基于寄存器的地址值、程序中的标号,32位的地址常量或者32位的常量。Symbol为.equ伪操作为expr定义的字符名称。示例.equVersion,"0.1".global及.globl.global声明一个符号可以被其他文件引用。相当于声明了一个全局变量,.globl与.global相同。语法格式.globalsymbol其中,symbol为声明的符号的名称。它是区分大小写的。示例.globalMyAsmFunc.text.text伪操作将操作符开始的代码编译到代码段或代码段子段(subse

6、ction)语法格式.text{subsection}示例.text.end标记汇编文件的结束行,即标号后的代码不作处理。语法格式.end1.5实验操作步骤1.实验A1)新建工程:运行EmbestIDE集成开发环境,选择菜单项File→NewWorkspace,系统弹出一个对话框,图1-1新建工作区按照图1-1所示输入相关内容。点击OK按钮,将创建一个新工程,并同时创建一个与工程名相同的工作区。此时在工作区窗口将打开该工作区和工程。2)建立源文件:点击菜单项File→New,系统弹出一个新的、没有标题的文本编辑窗,输入光标位于窗口中第一行,按照实验参考程序编辑输入源文

7、件代码。编辑完后,保存文件asm1_a.s。3)添加源文件:选择Project→AddToProject→Files命令,或单击工程管理窗口中的相应右键菜单命令,弹出文件选择对话框,在工程目录下选择刚才建立的源文件asm1_a.s。4)基本配置:选择菜单项Project→Settings…或快捷键Alt+F7,弹出工程设置对话框。在工程设置对话框中,选择Processor设置对话框,按照图1-2所示,进行目标板所用处理器的配置。图1-2处理器设置5)生成目标代码:选择菜单项Build→Buildasm_a或快捷键F7,生成目标代码。6)调试设置:选择

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。