久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久

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

嵌入式學(xue)習筆記: 指(zhi)令和偽(wei)指(zhi)令的區(qu)別(bie) 時間:2018-09-14      來源:未知

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

1、指令(重點)

數據處理

單寄存器讀寫

ldr, ldrb, ldrh,

str, ...

前索引(yin),后索引(yin),自動索引(yin)

分支

b

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

lsl, lsr, asr, ror, rrx

桶形移位器

對(dui)第二(er)個操作數才有

2、立即數(重點(dian))

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

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

3、GNU的偽(wei)指令

.byte .short .long .word

.text .data

.global / .globl

.if .else .endif

.end

.align

.equ

4、指令解碼

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

:確(que)定具體指(zhi)令。

S:標(biao)識指令是否(fou)影(ying)響(xiang)程序狀態寄存器 CPSR 條件標(biao)志。

Rd:指令操(cao)作的目的寄存器(qi)。

Rn:指令第一源操作數。

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

bit[25]:被用來區分(fen)是立即數(shu)移位操作還是寄存(cun)器(qi)移位操作。如(ru)果(guo)指令編碼出現下面情(qing)況: bit[25] = 0 并且 bit[4] = 1 并且 bit[7]

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

1、機器碼

E3A0100C

1110 0011 1010 0000 0001 0000 0000 1010

Rd:表示(shi)寄存器編(bian)號0-15

注意:12bit表示立(li)即數(shu),有(you)輪回規則(ze)20bit,S表示是否影響(xiang)cpsr寄存器標志位2、

E1A01102

1110 0001 1010 0000 0001 0001 0000 0010

 

3、分支(zhi)指令

 

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

31),每個指令(ling)4個字節,[1:0]兩bit位始(shi)終為0,所(suo)以(yi)(yi)B指令(ling)偏移(yi)量(liang)能表示的范(fan)(fan)(fan)圍(wei)為FFFFFF*4,所(suo)以(yi)(yi)B指令(ling)跳轉(zhuan)的范(fan)(fan)(fan)圍(wei)為64M,由于(yu)可以(yi)(yi)向前向后跳,所(suo)以(yi)(yi)B指令(ling)的跳轉(zhuan)范(fan)(fan)(fan)圍(wei)為+-32Mbyte

4、 加s影響標志位

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

 

Lsl不會影(ying)響(xiang)cpsr標(biao)志(zhi)位,lsls會影(ying)響(xiang)對應(ying)標(biao)志(zhi)位

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

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

6、 立即數

 



12位(wei)立(li)(li)即數中(zhong)0-7表示立(li)(li)即數,8-11表示輪換規則(ze)。每次輪換2bit位(wei),有連(lian)續(xu)24個0

7、 數據池

Ldr偽指(zhi)令本質是通過ldr匯編指(zhi)令實(shi)現

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

8、前(qian)索引、后索引

 

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

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

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

熱點文(wen)章推薦(jian)
華清學員就業(ye)榜單(dan)
高薪學員(yuan)經驗分(fen)享
熱點(dian)新聞推薦
前臺專(zhuan)線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專(zhuan)線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,,京公海網安備11010802025203號

回到頂部