精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

零基礎(chǔ)學(xué)ARM:MDK和GNU偽指令區(qū)別

電子設(shè)計 ? 來源:電子設(shè)計 ? 作者:電子設(shè)計 ? 2020-12-24 18:34 ? 次閱讀

ARM邪獵文章,請點擊以下匯總鏈接:

《從0學(xué)arm合集》

一、MDK和GNU偽指令區(qū)別

我們在學(xué)習(xí)匯編代碼的時候經(jīng)過會看到以下兩種風(fēng)格的代碼:

gnu代碼開頭是:

.global _start
_start: @匯編入口
ldr sp,=0x41000000
.end @匯編程序結(jié)束

MDK代碼開頭是:

AREA Example,CODE,READONLY ;聲明代碼段Example
ENTRY ;程序入口
Start
MOV R0,#0
OVER
END

這兩種風(fēng)格的代碼是要使用不同的編譯器,我們之前的實例代碼都是MDK風(fēng)格的。

那么多對于我們初學(xué)者來說要學(xué)習(xí)哪種風(fēng)格呢?答案是肯定的,學(xué)習(xí)GNU風(fēng)格的匯編代碼,因為做Linux驅(qū)動開發(fā)必須掌握的linux內(nèi)核、uboot,而這兩個軟件就是GNU風(fēng)格的。

為了大家不要把過多精力浪費在暫時沒用的知識上,下面我們只講GNU風(fēng)格匯編。

二、GNU匯編書寫格式:1. 代碼行中的注釋符號:

‘@’ 整行注釋符號:‘#’ 語句分離符號:
直接操作數(shù)前綴: ‘?!?或 ‘$’

2. 全局標號:

標號只能由a~z,A~Z,0~9,“.”,_等(由點、字母、數(shù)字、下劃線等組成,除局部標號外,不能以數(shù)字開頭)字符組成,標號的后面加“:”。

段內(nèi)標號的地址值在匯編時確定;
段外標號的地址值在連接時確定。
3. 局部標號:

局部標號主要在局部范圍內(nèi)使用而且局部標號可以重復(fù)出現(xiàn)。它由兩部組成開頭是一個0-99直接的數(shù)字局部標號 后面加“:”

F:指示編譯器只向前搜索,代碼行數(shù)增加的方向 / 代碼的下一句
B:指示編譯器只向后搜索,代碼行數(shù)減小的方向

注意局部標號的跳轉(zhuǎn),就近原則「舉例:」

文件位置
arch/arm/kernel/entry-armv.S

審核編輯:符乾江
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9052

    瀏覽量

    366825
  • 偽指令
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

    10502
收藏 人收藏

    評論

    相關(guān)推薦

    你聽說過MIPS嗎?它和ARM有何區(qū)別

    基于MIPS指令集的君正X2000處理器。有些工程師對于MIPS不怎么了解,究竟MIPS和ARM有何區(qū)別呢?本期文對MIPS做一個簡單介紹。MIPS和ARM都屬于
    的頭像 發(fā)表于 11-23 01:05 ?45次閱讀
    你聽說過MIPS嗎?它和<b class='flag-5'>ARM</b>有何<b class='flag-5'>區(qū)別</b>?

    新唐科技率先發(fā)布免費版Arm Keil MDK,助力嵌入式開發(fā)

    2024年11月5日,新唐科技正式推出了免費版的Arm? Keil? MDK Nuvoton Edition,成為全球首家向開發(fā)者提供Keil MDK完整版本的半導(dǎo)體公司。這款專業(yè)開發(fā)工具專為
    的頭像 發(fā)表于 11-06 11:07 ?574次閱讀

    GNU構(gòu)建裸機系統(tǒng)

    基于AT91SAM7S平臺,介紹裸機開發(fā),以閃燈為藍本,涉及匯編、鏈接、C/C++、中斷等。   無處不在的ARM處理器家族得到了GNU C/C++工具鏈的良好支持。雖然許多在線和印刷資源關(guān)注
    發(fā)表于 10-16 17:34 ?0次下載

    ARM處理器的指令集包括哪些

    ARM處理器的指令集是一個龐大而復(fù)雜的系統(tǒng),它涵蓋了多種類型的指令,用于實現(xiàn)數(shù)據(jù)處理、程序控制、內(nèi)存訪問等多種功能。
    的頭像 發(fā)表于 09-10 11:15 ?434次閱讀

    ARM處理器和CISC處理器的區(qū)別

    ARM處理器和CISC(復(fù)雜指令集計算機)處理器在多個方面存在顯著的區(qū)別。這些區(qū)別主要體現(xiàn)在架構(gòu)原理、性能與功耗、設(shè)計目標、應(yīng)用領(lǐng)域以及市場生態(tài)等方面。
    的頭像 發(fā)表于 09-10 11:10 ?383次閱讀

    電壓開關(guān)與電流開關(guān)的區(qū)別

    電壓開關(guān)(Zero Voltage Switch, ZVS)和電流開關(guān)(Zero Current Switch, ZCS)是電力電子技術(shù)中兩種重要的軟開關(guān)技術(shù),它們在提高系統(tǒng)效率、降低開關(guān)損耗、減少電磁干擾等方面具有顯著優(yōu)勢。以下將詳細探討這兩種技術(shù)的
    的頭像 發(fā)表于 07-25 11:18 ?1974次閱讀

    PLC中ALT和ALTP指令區(qū)別

    在PLC(可編程邏輯控制器)編程中,ALT和ALTP是兩個重要的指令,它們各自具有獨特的功能和應(yīng)用場景。本文將從多個方面對這兩個指令進行詳細的分析和比較,以便讀者能夠更深入地理解它們之間的區(qū)別
    的頭像 發(fā)表于 06-17 16:42 ?3106次閱讀

    GNU make中文手冊

    電子發(fā)燒友網(wǎng)站提供《GNU make中文手冊.pdf》資料免費下載
    發(fā)表于 06-05 13:22 ?0次下載

    I2C boot使用ARM GCC編譯pass, 改用ARM MDK編譯報錯怎么解決?

    I2C boot 使用ARM GCC 編譯pass, 改用ARM MDK 編譯報錯如下, 怎么解決,謝謝! cannot open source input file &quot
    發(fā)表于 06-03 06:06

    FPGA與ARM的本質(zhì)區(qū)別

    FPGA(Field-Programmable Gate Array)與ARM在多個方面存在本質(zhì)區(qū)別。 首先,從它們的定義和結(jié)構(gòu)上來看,F(xiàn)PGA是一種現(xiàn)場可編程門陣列,屬于可編程器件的一種。它的內(nèi)部
    發(fā)表于 04-28 09:00

    FPGA與ARM的本質(zhì)區(qū)別是什么?

    FPGA(Field-Programmable Gate Array)與ARM在多個方面存在本質(zhì)區(qū)別。 首先,從它們的定義和結(jié)構(gòu)上來看,F(xiàn)PGA是一種現(xiàn)場可編程門陣列,屬于可編程器件的一種。它的內(nèi)部
    發(fā)表于 04-28 08:56

    零基礎(chǔ)小白適不適合學(xué)鴻蒙開發(fā)?

    ,自由流轉(zhuǎn);統(tǒng)一生態(tài),原生智能。隨著鴻蒙生態(tài)的壯大,投入鴻蒙開發(fā)的IT專業(yè)人才越來越多,對于從未接觸過此方面零基礎(chǔ)的學(xué)生而言,也是一次很不錯的職業(yè)轉(zhuǎn)向和技術(shù)提升的好機會。 什么是鴻蒙? ? 鴻蒙系統(tǒng)(HarmonyOS)是華為技
    的頭像 發(fā)表于 03-04 17:50 ?1876次閱讀
    <b class='flag-5'>零基</b>礎(chǔ)小白適不適合<b class='flag-5'>學(xué)</b>鴻蒙開發(fā)?

    接地和接是一個概念嗎?接地和接的基本目的 工作接地與保護接區(qū)別

    接地和接是一個概念嗎?接地和接的基本目的 工作接地與保護接區(qū)別 保護接地與保護接區(qū)別
    的頭像 發(fā)表于 02-04 15:45 ?949次閱讀

    arm架構(gòu)和x86架構(gòu)區(qū)別 linux是x86還是arm

    ARM架構(gòu)和x86架構(gòu)是兩種不同的計算機處理器架構(gòu),它們在體系結(jié)構(gòu)、指令集、應(yīng)用領(lǐng)域等方面有著明顯的區(qū)別。Linux操作系統(tǒng)則具有廣泛的適配性,可以運行在各種架構(gòu)上,包括x86和ARM
    的頭像 發(fā)表于 01-30 13:46 ?1.7w次閱讀

    零基礎(chǔ)入門 Hyperlynx 仿真教程

    電子發(fā)燒友網(wǎng)站提供《零基礎(chǔ)入門 Hyperlynx 仿真教程.pdf》資料免費下載
    發(fā)表于 12-22 10:49 ?29次下載