《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 解決方案 > ARM匯編程序實例

ARM匯編程序實例

2017-06-22
關鍵詞: 匯編語言

下面列舉了幾個ARM匯編程序的簡單實例,給出了詳細的說明;分別給出了完成同一功能的程序在ADS編譯環境和GNU編譯環境下的不同形式,并在最后列出了由ADS環境向GNU環境下轉變時所需要的替換。請注意它們的不同之處。

示例 簡單的ARM指令程序。

在ADS編譯環境下,程序如下:

AREA     ARMex,CODE,READONLY;設置本段程序的名稱及屬性,代碼段的名稱為ARMex

ENTRY                                             ;標記要執行的第一條指令

Start              MOV      R0,#10                  ;設置參數

              MOV      R1,R3                  

              ADD       R0,R0,R1              ;R0=R0+R1

Stop        MOV      R0,#&18               ;軟中斷參數設置

              LDR       R1,=&20026       ;軟中斷參數設置

              SWI        0x123456              ;將CPU的控制權交給調試器

END                                                 ;文件的結束標志

行1:AREA指示符定義本程序段為代碼段,名字是ARMex,屬性為只讀。通常一個匯編程序可包括多個段,如代碼段、可讀/寫的數據段等。代碼段中也可定義數據。該行中的信息將供鏈接器使用。

行2:ENTRY指示符標記程序中被執行的第一條指令,即標志入口地址。在一個ARM程序中可以有多個ENTRY,但至少要有一個ENTRY。

行3:start是一個標號,表示代碼的開始,其值是一個地址。其后是ARM指令,利用MOV指令將立即數10賦給寄存器R0.

行4:利用MOV指令將立即數3賦給寄存器R1.

行5:計算R0=R0+R1.

行6~行8:這三條指令將系統控制權**給調試器,結束程序運行。此處是通過向Angel發送一個軟中斷實現的。Angel的軟中斷號是0x123456,實現該功能的中斷參數是R0=0x18,R1=0x20026.

行9:END指示符指示匯編器結束對該源程序的處理,所以每個匯編程序都必須包含一個END行。

GNU編譯環境下(基于Embest IDE環境開發環境),該程序如下:

.global_start

.text                                                  /*標志代碼段*/

_start      MOV      R0,#10                  /*設置參數*/

              MOV      R1,#3                   

              ADD       R0,R0,R1              /*R0=R0+R1*/

.stop              MOV      R0,#0x18

              LDR       R1,=0x20026

              SWI        0x123456

.END                                                /*文件的結束標志*/


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 永久免费视频网站在线观看| 国产在线资源站| 美女扒开尿眼让男人桶爽视频| 国内自拍成人网在线视频| 亚洲国产日韩在线成人蜜芽| 美女黄频a美女大全免费皮| 国产精品jlzz视频| gogogo高清在线播放| 日本大片免a费观看视频| 亚洲女人影院想要爱| 粗大白浊受孕h鞠婧祎小说| 国产午夜视频在线观看| 88久久精品无码一区二区毛片| 成人毛片18女人毛片免费96 | jizz中文字幕| 日韩欧美成人免费中文字幕| 亚洲视频在线观看视频| 老妇高潮潮喷到猛进猛出| 天堂电影在线免费观看| 久久久久久青草大香综合精品| 欧美性色黄大片www| 免费久久人人爽人人爽av| 萌白酱喷水视频| 国产极品视觉盛宴| 三级演员苏畅简历及个人资料简介| 最近韩国电影免费观看完整版中文 | 福利片一区二区| 国产乱色精品成人免费视频| 亚洲图片欧美另类| 国语精品视频在线观看不卡| 九色综合九色综合色鬼| 水蜜桃亚洲一二三四在线| 午夜激情视频在线| 豆奶视频最新官网| 国产欧美日韩另类一区乌克兰| 97热久久免费频精品99| 好男人看视频免费2019中文| 亚洲伊人久久精品| 狠狠爱天天综合色欲网| 吃奶呻吟打开双腿做受动态图| 高清国产一级毛片国语|