第四章ARM系统硬件设计基础.ppt

第四章ARM系统硬件设计基础.ppt

ID:48806638

大小:263.50 KB

页数:58页

时间:2020-01-27

第四章ARM系统硬件设计基础.ppt_第1页
第四章ARM系统硬件设计基础.ppt_第2页
第四章ARM系统硬件设计基础.ppt_第3页
第四章ARM系统硬件设计基础.ppt_第4页
第四章ARM系统硬件设计基础.ppt_第5页
资源描述:

《第四章ARM系统硬件设计基础.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章ARM系统硬件设计基础1、汇编语言程序常用的符号(1)常量常量是指其值在程序运行过程中不能被改变的量。ARM汇编程序支持的常量有数字常量、逻辑常量和字符串常量。数字常量一般为32位的整数;逻辑常量只有两种取值:真或假;字符串常量为一个固定的字符串。(2)变量变量是指其值在程序运行过程中可以改变的量。在ARM汇编语言程序中,可使用GBLA、GBLL、GBLS伪指令声明全局变量,使用LCLA、LCLL、LCLS伪指令声明局部变量,并可使用SETA、SETL和SETS对其进行初始化。(3)变量代换程序中的变量可通过代换操作取得一个

2、常量。代换操作符为“$”。数字变量前面有一个代换操作符“$”,编译器会将该数字变量的值转换为十六进制的字符串,并将该十六进制的字符串代换“$”后的数字变量。逻辑变量前面有一个代换操作符“$”,编译器会将该逻辑变量代换为它的取值(真或假)。字符串变量前面有一个代换操作符“$”,编译器会将该字符串变量的值代换“$”后的字符串变量。(3)变量代换LCLSS1;定义局部字符串变量S1和S2LCLSS2S1SETS“Test!”S2SETS“Thisisa$S1”;字符串变量S2的值为“ThisisaTest!”4.2.1ARM汇编器支持的

3、伪指令伪操作不像机器指令一样在CPU运行时执行,而是在汇编程序期间进行处理的。1、符号定义(SymbolDefinition)伪操作2、数据定义(DataDefinition)伪操作3、汇编控制(AssemblyControl)伪操作4、其他常用的伪操作1、符号定义伪操作符号定义伪指令用于定义ARM汇编程序中的变量、对变量赋值以及定义寄存器的别名等操作。常见的符号定义伪指令有如下几种:(1)定义全局变量GBLA、GBLL和GBLS(2)定义局部变量LCLA、LCLL和LCLS(3)对变量赋值SETA、SETL、SETS(1)GBL

4、A、GBLL和GBLS语法GBLA(GBLL或GBLS)全局变量名GBLA(GlobalArithmetic)定义一个全局的数字变量,并初始化为0GBLL(GlobalLogic)定义一个全局的逻辑变量,并初始化为F(假)GBLS(GlobalString)定义一个全局的字符串变量,并初始化为空(1)GBLA、GBLL和GBLSGBLATest1Test1SETA0xaaGBLLTest2Test2SETL{TRUE}GBLSTest3Test3SETS“Testing”(2)LCLA、LCLL和LCLS语法格式LCLA(LCLL

5、或LCLS)局部变量名LCLA伪指令用于定义一个局部的数字变量,并初始化为0LCLL伪指令用于定义一个局部的逻辑变量,并初始化为F(假)LCLS伪指令用于定义一个局部的字符串变量,并初始化为空(2)LCLA、LCLL和LCLSLCLATest4Test1SETA0xaaLCLLTest5Test2SETL{TRUE}LCLSTest6Test3SETS“Testing”(3)SETA、SETL和SETS语法变量名SETA(SETL或SETS)表达式SETA伪指令用于给一个数字变量赋值SETL伪指令用于给一个逻辑变量赋值SETS伪指

6、令用于给一个字符串变量赋值(4)RLIST(RegisterList)语法名称RLIST{寄存器列表}作用对一个通用寄存器列表定义名称,使用该伪指令定义的名称可在ARM指令LDM/STM中使用实例RegListRLIST{R0-R5,R8,R10}2、数据定义伪操作数据定义伪操作一般用于为特定的数据分配存储单元,同时可完成已分配存储单元的初始化。(1)DCB(DistributeContinuousByte)语法标号DCB表达式作用分配一片连续的字节存储单元并用伪指令中指定的表达式初始化。其中,表达式可以为0~255的数字或字符串

7、。DCB也可用“=”代替。实例StrDCB“Thisisatest!”(2)DCW语法标号DCW表达式作用分配一片连续的半字存储单元并用伪指令中指定的表达式初始化。其中,表达式可以为程序标号或数字表达式。实例DataTestDCW1,2,3(3)DCD语法标号DCD表达式作用分配一片连续的字存储单元并用伪指令中指定的表达式初始化。其中,表达式可以为程序标号或数字表达式。DCD也可用“&”代替。实例DataTestDCD4,5,6(4)DCFD语法标号DCFD表达式作用为双精度的浮点数分配一片连续的字存储单元并用伪指令中指定的表达式

8、初始化。每个双精度的浮点数占据两个字单元。实例FDataTestDCFD2E115,-5E7(5)DCFS语法标号DCFS表达式作用为单精度的浮点数分配一片连续的字存储单元并用伪指令中指定的表达式初始化。每个单精度的浮点数占据一个字单元。实例FDa

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

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

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