日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ARM汇编Hello,World

發布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ARM汇编Hello,World 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. 編譯運行環境見

http://www.cnblogs.com/linucos/archive/2013/03/01/2938517.htm

?

2. 匯編例子

?

? .data ?
? msg:? .asciz? "hello, world\n" ?
?
? .text ?
? .global main????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ?
? main: ?
? push??? {r0,r1,r2,lr}
? ldr???? r1, =msg???????? @ address ?
? mov???? r0, #1????????? @ stdout ?
? mov???? r2, #13???????? @ length ?
? swi???? #0x900004?????? @ sys_write ?
? pop???? {r0,r1,r2,pc}

3. 編譯運行

arm-linux-gnueabi-gcc asmhello.s -o asmhello

qemu上運行./asmhello 即可

4. C例子

?

?#include <stdio.h>
?
? int main(void)
? {
????? fprintf(stderr, "%s\n", __FILE__);??????????????????????????????????????????????????????????????????????????????????????????? ?
????? return 0;
? }

5. 編譯運行

arm-linux-gnueabi-gcc? hello.c -o hello

6. C例子反匯編

arm-linux-gnueabi-objdump -d hello > hello.dis

?

發現:main函數返回用 pop {r7,pc}實際對應的是push {r7,lr}

轉載于:https://www.cnblogs.com/linucos/archive/2013/03/16/2963311.html

總結

以上是生活随笔為你收集整理的ARM汇编Hello,World的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。