1 / 23
文档名称:

chapter-5-ARM程序设计-嵌入式课件.ppt

格式:ppt   大小:1,000KB   页数:23页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

chapter-5-ARM程序设计-嵌入式课件.ppt

上传人:fuxiyue 2024/5/7 文件大小:1000 KB

下载得到文件列表

chapter-5-ARM程序设计-嵌入式课件.ppt

相关文档

文档介绍

文档介绍:该【chapter-5-ARM程序设计-嵌入式课件 】是由【fuxiyue】上传分享,文档一共【23】页,该文档可以免费在线阅读,需要了解更多关于【chapter-5-ARM程序设计-嵌入式课件 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。(1)全局变量声明GBLA声明一个全局算术变量,并将其初始化为0。GBLL声明一个全局逻辑变量,便将其初始化为{FALSE}。GBLS声明一个全局字符串变量,并将其初始化为NULL。语法格式:GBLAvariableGBLLvariableGBLSvariable使用示例:GBLAnum1GBLLlogic_xGBLSstring_y(2)局部变量声明:LCLA,LCLL,LCLS。局部变量的声明和语法格式与全局变量的一样,但是局部变量只能在宏中进行声明和使用。(3)变量赋值SETA给一个算术变量赋值。SETL给一个逻辑变量赋值。SETS给一个字符串变量赋值。语法格式:variableSETAexprvariableSETLexprvariableSETSexpr使用示例:num1SETA0xfflogic_xSETL{TURE}string_ySETS“stringtest”(4)EQU:EQU为数字常量或一个字符名称,该伪指令可用“*”代替。语法格式:nameEQUexpr空间分配伪指令(1)SPACE:此伪指令常常用来分配一块内存区域供程序使用,“%”代替。语法格式:{label}SPACEexpr;其中label为可选项使用示例:dataroomSPACE256;以dataroom为起始地址,分配256字节的内存单元,并初始化为0(2)DCB:此伪指令用于定义并初始化一字节或多字节的内存区域,可以用“=”代替。语法格式:{label}DCBexpr{,expr,…}使用示例:data1DCB1,3,5stringDCB”hello!”,0;构造一个以NULL结尾的字符串;串的起始,地址为string(3)DCD、DCDUDCD和DCDU用于定义并初始化一个或多个字的内存区域,其中DCD可以用“&”代替。DCD和DCDU的区别在于DCD可以保证分配的内存单元是严格的字对齐的,而DCDU不能保证。 语法格式: {label}DCDexpr{,expr,…} 使用示例: data1DCD0,2,4,6 ;其中0,2,4,6按字存储 data2DCDU1,3,5其它空间分配伪指令DCDODCFD,DCFDU,DCFS,DCFSUDCIDCQ,DCQU,DCW,DCWU见P74-75(5)MAP、FIELDMAP和FIELD用于描述结构化的内存表。其中MAP用于定义结构化的首地址,MAP也可以用“^”来表示;FIELD用于定义结构化内存表中的数据于域,FIELD可以用“#”来表示。语法格式:MAPexpr{,base_register};内存表的起始地址位expr+;base_register,其中;base_register为可选项;若没有此项,内存表的起;始地址为expr使用示例:MAP4000;内存表的起始地址为4000integerFIELD4;从4000开始为Integer分配4字节stringFIELD64;从4004开始为String分配64字节doubleaFIELD8;从40068开始为Doublea分配8字节汇编控制伪指令IF、ELSE和ENDIF:IF、ELSE和ENDIF用于控制汇编器是否将一段汇编指令的源代码包含在汇编语言程序内。其中IF可以用“[”代替,ELSE可以用“I”代替,ENDIF可以用“]”代替.(2)WHILE、WEND:WHILE和WEND用来控制编译器根据条件重复汇编一段源代码.(3)MARCO与MEND:MACRO和MEND用来定义一段宏体。所谓宏实际上是一段汇编语言指令序列,将多条指令定义成一条宏语句,编译时宏语句被展开。sectionname为代码段或数据段的名称。若该名称以数字开头,则必须“|”括起来,如“|2_name”。还有一些代码段有约定的名称,如|.text|表示C语言编译码产生的代码段或者时语C语言库相关的代码段。attr表示代码段的属性,各属性间用逗号分隔。常用的属性如下。CODE:指定为代码段。DATA:指定为数据段。READONLY:只读段,:只读可写段,数据段的默认属性为READWRILE。使用示范:AREAname1,CODE,READONLYAREAname1,DATA,READWRITE