ARM匯程式設計序學習

2021-07-05 17:17:23 字數 775 閱讀 2596

part1 匯程式設計序框架

一、完整框架

.section.data        《初始化的資料》

.section.bss          《未初始化的資料》

.section.text

.global _start           

_start:                    //入口

《彙編**》

二、簡化框架

.text

.global _start

_start:

《彙編**》

(注:以上簡化版為常用框架)

part2  eclipse環境搭建(略)

–ttext 0x30000000        //2440的記憶體起始位址

–ttext 0x50000000        //610的記憶體起始位址

–ttext 0x20000000        //210的記憶體起始位址

part3  彙編指令的學習

一、方法:分類學習

1、一般指令 2、偽指令 3、協處理器指令

(1、2略,自己查手冊,練習)

二、協處理器

2.1 arm可支援16個協處理器(最重要的有cp15:系統控制協處理器)

2.2 cp15的訪問:以暫存器訪問的方式(通過技術手冊了解:arm1176jzfs.pdf)

2.3 訪問指令 :

mcr:通用暫存器 ——>cp      mrc: cp ——>通用暫存器

ARM學習之ARM匯程式設計序

在arm thumb 組合語言程式中以程式段為單位組織 段可以分為 段 code section 和資料段 data section 乙個匯程式設計序至少應該有乙個 段,當程式較長時,可以分割為多個 段和資料段,多個段在程式編譯鏈結時最終形成乙個可執行的映像檔案。可執行映像檔案的構成 鏈結器根據系統...

ARM匯程式設計序鑑賞 1

area asmembedeedfile code,readonly 定義一段可讀的 區域 export mulcountfunction 輸出函式 mulcountfunction import val 插入變數val mulcountfunction ldr r1,val 取val的暫存器位址,...

ARM彙編程式設計之C程式呼叫匯程式設計序

編寫乙個彙編子程式,實現兩個字資料的加法運算,編寫乙個c程式來呼叫該彙編子程式,並將運算結果使用printf 函式顯示出來。示例如下 為解決這個問題,分別編寫滿足需求的c程式和匯程式設計序。c程式源 define uint32 unsigned int extern uint32 add uint3...