1 / 42
文档名称:

第二章 市场营销环境分析.ppt

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

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

分享

预览

第二章 市场营销环境分析.ppt

上传人:neryka98 2018/5/3 文件大小:3.59 MB

下载得到文件列表

第二章 市场营销环境分析.ppt

相关文档

文档介绍

文档介绍:1、ARM汇编语言的语句格式
[label] [operation] [operand] [;comment]
标号域 操作助记符域 操作数域 注释域
标号域用来表示指令的地址、变量、过程名、数据的地址和常量。可以大小写混合,一般以字母开头,由字母、数字、下划线等组成。语句标号必须在一行的开头书写,不能留空格。
操作助记符域可以为指令、伪指令、宏指令、伪操作的助记符。全指令助记符部大写或全部小写,不能大小写混合,指令前必须有空格。
伪指令包括ADR、ADRL、LDR、NOP,不在程序运行期间由机器执行,在汇编时将被合适的机器指令替换为ARM或Thumb指令。
伪操作不在程序运行期间由机器执行,只在汇编过程中起作用。
宏指令是一段独立的程序代码,可以插在源程序中,由伪操作来定义。宏定义本身不会产生代码,只是在调用时把宏体插入源程序中。
操作数域可以是常量、变量、标号、寄存器、表达式,不同对象之间用逗号隔开。
注释域以“;”开头,汇编程序对“;”之后的部分不予汇编。
2、程序中的变量、常量以及汇编时的变量代换
在ARM(Thumb)汇编程序设计中,使用GBLA、GBLL、GBLS伪操作声明全局变量,使用LCLA、LCLL、LCLS声明局部变量,并可以使用SETA、SETL、SETS对其进行初始化。
使用EQU来定义数值常量、数值常量一般为32位整数,无符号数时,取值范围是0~2^32-1,有符号数时,-2^31~2^31-1。十进制数,1、2等,十六进制数,0x90、&90等,n进制数:n_XXX,n的范围是2-9,8_247表示8进制数。
有些值可以用ASCII码表示,例如MOV R1,#’A’等价于MOV R1,#0x42。
逻辑常量:{TRUE}{FALSE}。
字符常量单引号表示,包括C语言的转义字符,如‘\n’,字符串常量双引号表示,也包括C语言的转义字符,如“abcd\0xc\r”。
字符串代换,编译器将该字符串变量的值代换为“$”后的字符串变量。
数值变量代换,编译器将该数值变量的值转换为十六进制,然后代换。
3、程序中的表达式和运算符
、数值表达式及运算符
算数运算符
X + Y
X – Y
X X Y
X / Y
X:MOD:Y 表示X除以Y的余数
移位运算
X:ROL:Y X循环左移Y位
X:ROR:Y
X:SHL:Y X左移Y位
X:SHR:Y
位逻辑运算符
X:AND:Y
X:ORY
:NOT:Y
X:EOR:Y 异或
、逻辑表达式及运算符
结果取值为{TRUE}或{FALSE}。
关系操作符
X = Y、X > Y、X < Y 、X>=Y、X<=Y、X/=Y、X<>Y
逻辑操作符
X:LAND:Y
X:LORY
:LNOT:Y
X:LEOR:Y
、字符串表达式及运算符
LEN,返回字符串的长度,:LEN:X。
CHR,0~255之间的整数转换为一个含ASCII字符的字符串,:CHR:M。
STR,将一个数值表达式或逻辑表达式转换为一个字符串,对于数值表达式,转换为一个十六进制的字符串;对于逻辑表达式转换为字符串T或F,:STR:X。
LEFT,返回字符串左端的一个子串,X:LEFT:Y,Y是一个整数,表示要返回的字符个数。
FIGHT,返回字符串右端的一个子串,X:LEFT:Y,Y是一个整数,表示要返回的字符个数。
CC,连接两个字符串,:Y,将Y连接在X的后面。
、基于寄存器和PC的表达式
BASE,返回基于寄存器的表达式的寄存器的编号,:BASE:X,X为与寄存器相关的表达式。
INDEX,返回基于寄存器的表达式的相对于基址寄存器的偏移量,:INDEX:X,X为与寄存器相关的表达式。
、其他常用运算符
“?”X,返回定义符号X的代码行所生成的可执行代码的字节数。
DEF,:DEF:X,如果符号已定义,则结果为{TRUE},否则为{FALSE}。
、表达式各运算符优先级
括号运算符的优先级最高。
相邻单目运算符的运算顺序从右到左,单目运算符的优先级高于其他运算符。
优先级相同的双目运算符的运算顺序从左到右。
4、ARM汇编器的伪操作
符号定义伪操作
在ARM(Thumb)汇编程序设计中,使用GBLA、GBLL、GBLS伪操作声明全局变量,使用LCLA、LCLL、LCLS声明局部变量,并可以使用SETA、SETL、SETS对其进行初始化。
例如, GBLA A1
A1 SETA 0xFF
RLIST伪操作命名一个通用寄存器列表,使用该伪操作定义的名称可在ARM指令LDM/SRM中使用,列表中寄存器访问次序为根据寄存器的编号由低到高,而与