ARM A9 基礎學習 )

2021-07-09 13:48:46 字數 2998 閱讀 1137

arm -a9  基礎學習

1)裸機程式 vs 應用程式

(1)應用程式中,.text/.rodata/.data/.bss段的位置是固定的,而裸機程式中需要指定這些段的位置

(2)應用程式中,棧非常大,在裸機程式中,棧非常小。

(3)應用程式中,有標準的庫支援,而裸機程式中,沒有標準庫的支援。

2)arm指令集

cup & 指令集

cpu       arm7  arm9  arm10  arm11  cortex-a8   cortex-a9

指令集    armv4  armv4  armv5   armv6  armv7      armv7

3)條件助記符(根據條件標誌位(n z c v)來判斷條件是否成立)

條件助記符          條件標誌位              含義                    理解

eq                

z = 1                   相等                    

int x, y

x - y

ne                   z = 0                   不相等                   ...

cs                   c = 1                   無符號的數大於或等於    unsigned int x, y;

x - y

cc                   c = 0                   無符號的數小於           ...

mi                   n = 1                   結果為負數               ...

pl                   n = 0                   結果為正數或0            ...

vs                   v = 1                   結果溢位                 ...

vc                  v = 0                   結果未溢位               ...

hi                   c = 1且z = 0            無符號的數大於          cs 基礎上排出等於

ls                   c = 0或z = 1            無符號的小於或等於      cc 基礎上加上等於

ge                  n = v                   帶符號的數大於或等於    int x, y;

x - y

n = 0          且 v = 0

---------------   -----

結果為正數或0     未溢位   說明原本結果為正數或0

n = 1          且 v = 1

--------------    ------

結果為負數        溢位    說明原本的結果為正數

lt                   n != v                  帶符號的數大於或等於     int x, y;

x - y

n = 0          且 v = 1

---------------   -----

結果為正數或0     溢位      說明原本的結果為負數

n = 1          且 v = 0

---------------   -----

結果為負數        未溢位    說明原本的結果為負數

gt                   z = 0 且 n = v                                  ge 基礎上排除等於

le                   z = 1 或 n != v                                 lt 基礎上加上等於

4)邏輯位運算

按位與0001 0011 data

&0000 1001 mask

--------------

0000 0001 結果

特點: mask為1的位, 對應的資料位保留, mask為0的位,對應的資料位被清0

按位或0001 0011 data

|0000 1001 mask

--------------

0001 1011 結果

特點: mask為1的位, 對應的資料位被置1, mask為0的位,對應的資料位不變

按位取反

~0001 0011 data

---------------

1110 1100 結果

按位異或

0001 0011 data

^0000 1001 mask

--------------

0001 1010 結果

特點: mask為1的位, 對應的資料位取反, mask為0的位,對應的資料位不變

位清除0001 0011 data

bic 0000 1001 mask

--------------

0001 0010 結果

特點: mask為1的位, 對應的資料位清0, mask為0的位,對應的資料位不變

5)跳轉指令

(1)b:

作用: 跳轉指令b使程式跳轉到指定的位址執行程式(跳轉範圍是pc -32mb到pc+32mb)

指令格式: b[cond]

(2)bl:帶連線的跳轉指令bl將下一條指令的位址拷貝到r14(即返回位址連線暫存器lr)暫存器中,然後跳轉到指定位址執行程式。

指令格式:  bl[cond]

ARM A9,三星獵戶座4412學習筆記

終於把adc實驗解決了 以下是部分 gpio define gpm4con volatile unsigned int 0x110002e0 define gpm4dat volatile unsigned int 0x110002e4 define gpa0con volatile unsigne...

python基礎學習9

文字編輯器讀取檔案內容的流程 階段1 啟動乙個檔案編輯器 文字編輯器如nodepad pycharm,word 階段2 檔案編輯器會將檔案內容從硬碟讀入記憶體 階段3 文字編輯器會將剛剛讀入記憶體中的內容顯示到螢幕上 python直譯器執行檔案的流程 階段1 啟動python直譯器,此時就相當於啟動...

前端基礎學習day9

移動端 設配 移動端瀏覽 webkit核心 safari firefox chrome 螢幕的尺寸 1.裝置畫素pt 解析度 螢幕上的發光點,在廠商出廠時畫素就以固定 2.css畫素px 相對單位 3.ppi 畫素的密度 4.dpr畫素比 裝置畫素與css畫素之間的比例關係 ps 在頁面中設定的畫素...