新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > ARM匯編和Gnu匯編的轉換

        ARM匯編和Gnu匯編的轉換

        作者: 時間:2016-11-20 來源:網絡 收藏
        將ARM ADS下的匯編碼移植到GCC for ARM編譯器時,有如下規則:
        1,注釋行以"@"或"/* ... */"代替";"

        2, GET或INCLUDE => .INCLUDE
        如:get option.a => .include "option.a"

        3, EQU => .equ
        TCLK2 EQU PB25 => .equ TCLK2, PB25
        SETA ==> .equ
        SETL ==> .equ
        BUSWIDTH SETA 16 => .equ BUSWIDTH, 16

        4, EXPORT => .global
        IMPORT => .extern
        GBLL => .global
        GBLA => .global

        5, DCD => .long

        6, IF :DEF: => .IFDEF
        ELSE => .ELSE
        ENDIF => .ENDIF
        :OR: => |
        :SHL: => <<

        7, END =>.end
        NOTE:在被include的頭文件中,如"option.a"中,不再需要.end,否則會導致主匯編程序結束。

        8,符號定義加":"號
        Entry => Entry:
        AREA Word, CODE, READONLY ==> .text
        AREA Block, DATA, READWRITE ==> .data
        CODE32 ==> .arm
        CODE16 ==> .thumb

        9, MACRO ==> .macro
        MEND ==> .endm

        Reference:
        http://blog.21ic.com/user1/3858/archives/2007/43113.html


        關鍵詞: ARM匯編Gnu匯編轉

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 台湾省| 滕州市| 广宗县| 柳州市| 赣榆县| 南平市| 梁河县| 武宁县| 三穗县| 岢岚县| 延吉市| 弥渡县| 维西| 齐齐哈尔市| 昭苏县| 杭锦后旗| 连州市| 常宁市| 鹤峰县| 华安县| 淮北市| 曲沃县| 寻甸| 洛川县| 淳化县| 湘潭县| 昌图县| 囊谦县| 隆回县| 滦南县| 陇川县| 北辰区| 丹巴县| 策勒县| 嵊州市| 获嘉县| 宜兰县| 巴彦淖尔市| 溧水县| 上犹县| 封丘县|