《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 解决方案 > ARM汇编语言中的表达式补充

ARM汇编语言中的表达式补充

2017-06-22
关键词: 汇编语言

3)基于寄存器和基于PC的表达式

基于寄存器的表达式表示某个寄存器的值加上(或减去)一个数字表达式。基于PC的表达式表示PC寄存器的值加上(或减去)一个数字表达式。基于PC的表达式通常由程序中的标号与一个数字表达式组成。相关的操作符有以下几种。

(1)BASE

BASE操作符返回基于寄存器的表达式中的寄存器编号。

:BASE:A

其中:A为基于寄存器的表达式。

(2)INDEX

INDEX操作符返回基于寄存器的表达式相对于基址寄存器的偏移量。

:INDEX:A

其中:A为基于寄存器的表达式

(3)+、—

+、—为正负号。它们可放在数字表达式或基于PC的表达式前面。

+A

—A

其中:A为基于PC的表达式或数字表达式。

4)逻辑表达式

逻辑表达式由逻辑量、逻辑操作符、关系操作符以及括号组成。其取值范围为{FALSE}和{TURE}。

(1)    关系操作符

关系操作符用于表示两个同类的表达式之间的关系。关系操作符一般与两个操作数组成一个逻辑表达式。操作数类型可以是数字表达式、字符串表达式、基于寄存器的表达式及基于PC的表达式。注意,数字表达式都看做无符号数,字符串比较是根据串中对应字符的ASCII值进行比较的。关系操作符及格式如下:

A=B                            表示A等于B

A>B                            表示A大于B

A>=B                   表示A大于或者等于B

A<B                            表示A小于B

A<=B                   表示A小于或者等于B

A/=B                    表示A不等于B

A<>B                   表示A不等于B

(2)    逻辑操作符

逻辑操作符用于进行两个逻辑表达式之间的基本逻辑操作。其语法格式如下:

:LNOT:A          逻辑表达式A的值取反

A:LAND:B       逻辑表达式A和B的逻辑“与”

A:LOR:B          逻辑表达式A和B的逻辑“或”

A:LEOR:B       逻辑表达式A和B的逻辑“异或”。

其中:A和B是两个逻辑表达式。

5)其他一些操作符

(1)·?

操作符的语法格式及含义如下,其中A为一个字符:

?A

返回定义字符A是代码行所产生的可执行代码的字节数。

(2)·DEF

DEF操作符判断某个符号是否已经定义。其语法格式及含义如下,其中A为一个符号:

:DEF:A

如果符号A已经定义,则上述结果为{TURE};否则上述结果为{FALSE}。

(3)·SB OFFSET_19_12

SB OFFSET_19_12语法格式及含义如下,其中label为一个标号:

:SB OFFSET_19_12:label

返回(label—SB)的位[19:12]。

(4) ·SB OFFSET_11_0

SB OFFSET_11_0语法格式及含义如下,其中label为一个标号:

:SB OFFSET_11_0:label

返回(label—SB)的位[11:0]。


本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。