微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > arm汇编学习(五)

arm汇编学习(五)

时间:11-09 来源:互联网 点击:
新增个手写GNU语法arm的方法,以后可以狂逆狂写

hello.S文件

.datamsg:.ascii "Hello, ARM!\n"len = . - msg.text.globl _start_start:/* syscall write(int fd, const void *buf, size_t count) */mov %r0, $1 /* fd -> stdout */ldr %r1, =msg /* buf -> msg */ldr %r2, =len /* count -> len(msg) */mov %r7, $4 /* write is syscall #4 */swi $0 /* invoke syscall *//* syscall exit(int status) */mov %r0, $0 /* status -> 0 */mov %r7, $1 /* exit is syscall #1 */swi $0 /* invoke syscall */

记得最后加个空格或者回车,不然会报hello.S:21: Warning: partial line at end of file ignored

arm-linux-androideabi-as -o hello.o hello.S
arm-linux-androideabi-ld -s -o hello hello.o

也是个学习ARM汇编的方法

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top