新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 常用 ARM指令集及匯編

        常用 ARM指令集及匯編

        作者: 時間:2016-11-10 來源:網絡 收藏
        一、 ARM處理器的尋址方式

        二、指令集學習

        本文引用地址:http://www.104case.com/article/201611/317553.htm

        (一) ARM 指令集

        1. 指令格式

        2. 條件碼

        3. ARM 存儲器訪問指令

        1) LDR/ STR -加載 /存儲指令

        2) LDM/ STM -多寄存器加載 /存儲指令

        3) SWP -寄存器和存儲器交換指令

        4. ARM 數據處理指令

        1) 數據傳送指令

        a) MOV -數據傳送指令

        b) MVN -數據非傳送指令

        2) 算術邏輯運算指令

        a) ADD -加法運算指令

        b) SUB -減法運算指令

        c) RSB- 逆向減法指令

        d) ADC -帶進位加法指令

        e) SBC -帶進位減法指令

        f) RSC -帶進位逆向減法指令

        g) AND -邏輯“與”

        h) ORR -邏輯“或”

        i) EOR -邏輯“異或

        j) BIC -位清除指令

        3) 比較指令

        a) CMP -比較指令

        b) CMN -負數比較指令

        c) TST -位測試指令

        d) TEQ -相等測試指令

        4) 乘法指令

        a) MUL - 32位乘法指令

        b) MLA - 32位乘加指令

        c) UMULL - 64位無符號乘法指令

        d) UMLAL - 64位無符號乘加指令

        e) SMULL - 64位有符號乘法指令

        f) SMLAL - 64位有符號乘加指令

        5. ARM 分支指令

        1) B -分支指令

        2) BL -帶連接的分支指令

        3) BX -帶狀態切換的分支指令

        6. ARM 協處理器指令

        1) CDP -協處理器數據操作指令

        2) LDC -協處理器數據讀取指令

        3) STC -協處理器數據寫入指令

        4) MCR - ARM處理器到協處理器的數據傳送指令

        5) MRC -協處理器到 ARM處理器的數據傳送指令

        7. ARM 雜項指令

        1) SWI -軟中斷指令

        2) MRS -讀狀態寄存器指令

        3) MSR -寫狀態寄存器指令

        8. ARM 偽指令

        1) ADR -小范圍的地址讀取偽指令

        2) ADRL -中等范圍的地址讀取偽指令

        3) LDR -大范圍的地址讀取偽指令

        4) NOP -空操作偽指令

        (二) Thumb 指令集

        1. Thumb 指令集和 ARM指令集的區別

        2. Thumb 存儲器訪問指令

        1) LDR/ STR -加載 /存儲指令

        2) PUSH/ POP -寄存器入棧 /出棧指令

        3) LDMIA/ STMIA -多寄存器加載 /存儲指令

        3. Thumb 數據處理指令

        1) 數據傳送指令

        a) MOV -數據傳送指令

        b) MVN -數據非傳送指令

        c) NEG -數據取負指令

        2) 算術邏輯運算指令

        a) ADD -加法運算指令

        b) SUB -減法運算指令

        c) ADC -帶進位加法指令

        d) SBC -帶進位減法指令

        e) MUL -乘法運算指令

        f) AND -邏輯“與”

        g) ORR -邏輯“或”

        h) EOR -邏輯“異或”

        i) BIC -位清除指令

        j) ASR -算術右移指令

        k) LSL -邏輯左移指令

        l) LSR -邏輯右移指令

        m) ROR -循環右移指令

        3) 比較指令

        a) CMP -比較指令

        b) CMN -負數比較指令

        c) TST -位測試指令

        4. Thumb 分支指令

        1) B -分支指令

        2) BL -帶連接的分支指令

        3) BX -帶狀態切換的分支指令

        5. Thumb 雜項指令

        1) SWI -軟中斷指令

        6. Thumb 偽指令

        1) ADR -小范圍的地址讀取偽指令

        2) LDR -大范圍的地址讀取偽指令

        3) NOP -空操作偽指令



        關鍵詞: ARM指令集匯

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 丽水市| 合作市| 滨州市| 鄯善县| 应用必备| 延川县| 西乌珠穆沁旗| 易门县| 阿合奇县| 新兴县| 三穗县| 礼泉县| 阳高县| 衡水市| 湘西| 志丹县| 大埔县| 临清市| 榆树市| 离岛区| 北碚区| 舟山市| 石嘴山市| 涪陵区| 偃师市| 肇源县| 陇西县| 鹤壁市| 东丽区| 章丘市| 昆明市| 阿拉善盟| 苍山县| 沙坪坝区| 新乐市| 东至县| 三门县| 上林县| 阿坝县| 卫辉市| 安义县|