新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Android的ARM匯編語言系列之三:ARM匯編語言程序結(jié)構(gòu)

基于Android的ARM匯編語言系列之三:ARM匯編語言程序結(jié)構(gòu)

作者: 時(shí)間:2016-11-09 來源:網(wǎng)絡(luò) 收藏
章節(jié)列表

之一:ARM匯編語言開篇
之二:C/C++程序生成ARM匯編程序的過程分析
之三:ARM匯編語言程序結(jié)構(gòu)
之四:ARM處理器的尋址方式
之五:ARM指令集與Thumb指令集
之六:NEON指令集與VFP指令集

本文引用地址:http://m.butianyuan.cn/article/201611/317691.htm

Android平臺的ARM匯編是GNU ARM匯編格式,使用的匯編器是GAS(GNU Assembler),GAS有自己的一套語法結(jié)構(gòu)。詳細(xì)的內(nèi)容可以查閱GAS語法結(jié)構(gòu)官方手冊。

我們先來看一個完整的ARM匯編程序:

C代碼:

#include int main(int argc, char* argv[]){printf("Hello ARM!n");return 0;}

對應(yīng)的匯編代碼:

.arch armv5te.fpu softvfp.eabi_attribute 20, 1.eabi_attribute 21, 1.eabi_attribute 23, 3.eabi_attribute 24, 1.eabi_attribute 25, 1.eabi_attribute 26, 2.eabi_attribute 30, 6.eabi_attribute 18, 4.file   "hello.c".section    .rodata.align  2.LC0:.ascii  "Hello ARM!