gas & nasm

https://blog.csdn.net/luhao19980909/article/details/103691295

C++
.s 基于AT&T指令采用GAS编译
.asm 基于intel指令采用NASM编译
.o 链接文件win下是obj文件
.a 静态链接多个.o打包而成
.so 动态链接多个.o打包而成

GAS汇编基于AT&T指令.s后缀
NASM汇编基于intel指令.asm后缀
C++
GAS和NASM汇编器对比
GAS: GNU Assembler
NASM: Netwide Assembler

汇编格式对比(linux64位下)
GAS编译 hello.s
as hello.s -o hello.o

NASM编译 hello.asm
nasm -f elf64 hello.asm -o hello.o
(elf64/elf32指定64/32位机器)

链接部分一致
ld hello.o -o hello
(生成hello可执行文件)