《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 解決方案 > ARM匯編語言中的表達式補充

ARM匯編語言中的表達式補充

2017-06-22
關鍵詞: 匯編語言

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

基于寄存器的表達式表示某個寄存器的值加上(或減去)一個數(shù)字表達式?;赑C的表達式表示PC寄存器的值加上(或減去)一個數(shù)字表達式?;赑C的表達式通常由程序中的標號與一個數(shù)字表達式組成。相關的操作符有以下幾種。

(1)BASE

BASE操作符返回基于寄存器的表達式中的寄存器編號。

:BASE:A

其中:A為基于寄存器的表達式。

(2)INDEX

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

:INDEX:A

其中:A為基于寄存器的表達式

(3)+、—

+、—為正負號。它們可放在數(shù)字表達式或基于PC的表達式前面。

+A

—A

其中:A為基于PC的表達式或數(shù)字表達式。

4)邏輯表達式

邏輯表達式由邏輯量、邏輯操作符、關系操作符以及括號組成。其取值范圍為{FALSE}和{TURE}。

(1)    關系操作符

關系操作符用于表示兩個同類的表達式之間的關系。關系操作符一般與兩個操作數(shù)組成一個邏輯表達式。操作數(shù)類型可以是數(shù)字表達式、字符串表達式、基于寄存器的表達式及基于PC的表達式。注意,數(shù)字表達式都看做無符號數(shù),字符串比較是根據串中對應字符的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是代碼行所產生的可執(zhí)行代碼的字節(jié)數(shù)。

(2)·DEF

DEF操作符判斷某個符號是否已經定義。其語法格式及含義如下,其中A為一個符號:

:DEF:A

如果符號A已經定義,則上述結果為{TURE};否則上述結果為{FALSE}。

(3)·SB OFFSET_19_12

SB OFFSET_19_12語法格式及含義如下,其中l(wèi)abel為一個標號:

:SB OFFSET_19_12:label

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

(4) ·SB OFFSET_11_0

SB OFFSET_11_0語法格式及含義如下,其中l(wèi)abel為一個標號:

:SB OFFSET_11_0:label

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


本站內容除特別聲明的原創(chuàng)文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯(lián)系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。