安装ARM交叉编译器:
sudo apt install gcc-aarch64-linux-gnu binutils-aarch64-linux-gnu
安装QEMU环境:
sudo apt install qemu qemu-user qemu-user-static
安装gdb环境
sudo apt install gdb-multiarch
编写汇编代码:hello_world.s
- .section .data
- msg: .asciz "Hello, AArch64!\n"
- .section .text
- .global _start
- _start:
- // Write the string to stdout
- mov x0, 1 // File descriptor (stdout)
- ldr x1, =msg // Load the address of the string
- mov x2, 16 // Length of the string
- mov x8, 64 // syscall: write
- svc 0 // Make syscall
- // Exit the program
- mov x8, 93 // syscall: exit
- mov x0, 0 // Exit status
- svc 0 // Make syscall
编写Makefile文件
- hello_world:hello_world.o
- aarch64-linux-gnu-ld -o hello_world hello_world.o
- hello_world.o:hello_world.s
- aarch64-linux-gnu-as -o hello_world.o hello_world.s
- clean:
- rm hello_world.o
执行hello_world程序hello_world代码的程序解释