国产成人精品三级麻豆,色综合天天综合高清网,亚洲精品夜夜夜,国产成人综合在线女婷五月99播放,色婷婷色综合激情国产日韩

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 學習筆記 > 嵌入式學習筆記: 指令和偽指令的區(qū)別

嵌入式學習筆記: 指令和偽指令的區(qū)別 時間:2018-09-14      來源:未知

對于指令和偽指令來說,很多人都有疑惑,他們到底是什么,有什么區(qū)別嗎,今天大神就來告訴你

1、指令(重點)

數(shù)據(jù)處理

單寄存器讀寫

ldr, ldrb, ldrh,

str, ...

前索引,后索引,自動索引

分支

b

bl // 自動把下一條指令的地址放到lr中移位

lsl, lsr, asr, ror, rrx

桶形移位器

對第二個操作數(shù)才有

2、立即數(shù)(重點)

8位的二進制數(shù)右移偶數(shù)位(0~30)能夠表示出來就是合法的

指令中的立即數(shù)是由一個 8 bit 的常數(shù)移動 4 bit 偶數(shù)位(0, 2,4, …, 26, 28, 30)得到的。所以,每一條指令都包含一個 8 bit 的常數(shù) X 和移位值 Y,得到的立即數(shù)=X 循環(huán)右移(2×Y)

3、GNU的偽指令

.byte .short .long .word

.text .data

.global / .globl

.if .else .endif

.end

.align

.equ

4、指令解碼

編碼格式中各域含義如下。

:確定具體指令。

S:標識指令是否影響程序狀態(tài)寄存器 CPSR 條件標志。

Rd:指令操作的目的寄存器。

Rn:指令第一源操作數(shù)。

bit[11∶0]:移位操作,詳見本章移位操作一節(jié)。

bit[25]:被用來區(qū)分是立即數(shù)移位操作還是寄存器移位操作。如果指令編碼出現(xiàn)下面情況: bit[25] = 0 并且 bit[4] = 1 并且 bit[7]

= 1,則指令并非數(shù)據(jù)處理指令,它可能是 Load/Store 指令或算術(shù)指令。

1、機器碼

E3A0100C

1110 0011 1010 0000 0001 0000 0000 1010

Rd:表示寄存器編號0-15

注意:12bit表示立即數(shù),有輪回規(guī)則20bit,S表示是否影響cpsr寄存器標志位2、

E1A01102

1110 0001 1010 0000 0001 0001 0000 0010

 

3、分支指令

 

0-23bit位一共24bit位,相當于FFFFFF,地址一共32位組成(0-

31),每個指令4個字節(jié),[1:0]兩bit位始終為0,所以B指令偏移量能表示的范圍為FFFFFF*4,所以B指令跳轉(zhuǎn)的范圍為64M,由于可以向前向后跳,所以B指令的跳轉(zhuǎn)范圍為+-32Mbyte

4、 加s影響標志位

adds無進位cpsr的c位置0,有進位置1 subs無借位cpsr的c位置1,有借位置0 5、桶型移位器

 

Lsl不會影響cpsr標志位,lsls會影響對應標志位

移位的位數(shù)可以用立即數(shù)表示,但是是5位的立即數(shù)5位?2的5次方31(0-31),而寄存器32bit長,所以最多移動32-1位。

Lsl,lsls,asr,ror,rrx如果不加S,不影響標致位加S影響標志位,講義上是加s的圖示

6、 立即數(shù)

 



12位立即數(shù)中0-7表示立即數(shù),8-11表示輪換規(guī)則。每次輪換2bit位,有連續(xù)24個0

7、 數(shù)據(jù)池

Ldr偽指令本質(zhì)是通過ldr匯編指令實現(xiàn)

通過pc值加上一個偏移量得到一個地址,然后將地址中的值給寄存器,編譯器會將ldr偽指令的數(shù)編譯到程序的某一位置,存放這些常量的位置成為數(shù)據(jù)池

8、前索引、后索引

 

前索引(自動更新基址寄存器)先加后寫,++i 先移地址在寫值后索引,先寫入后加,i++ 先寫值后移地址

上一篇:嵌入式學習筆記:ARM串口通信詳解

下一篇:嵌入式學習筆記:數(shù)組指針的使用難點

熱點文章推薦
華清學員就業(yè)榜單
高薪學員經(jīng)驗分享
熱點新聞推薦
前臺專線:010-82525158 企業(yè)培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權(quán)所有 ,京ICP備16055225號-5京公海網(wǎng)安備11010802025203號

回到頂部