详细功能说明
- 语法体系:采用清晰的Intel语法,与CPU指令集原生适配,相较于AT&T语法更贴近自然语言,降低入门门槛。
- 跨平台适配:完美支持Windows(32/64位)、Linux、MacOS三大主流系统,生成的目标文件可在对应平台直接运行。
- 输出格式丰富:支持ELF(Linux/Mac可执行格式)、PE(Windows可执行格式)、COFF(通用目标文件格式)等多种格式,适配操作系统开发、应用程序底层编写等不同场景。
- 宏指令支持:具备强大的宏定义功能,可自定义重复指令片段,简化复杂代码编写,提升开发效率。
- 文档与生态:官方提供完整的用户手册(含语法详解、指令参考),社区资源丰富,入门教程、问题解决方案易获取。
使用方法说明
(1)环境搭建步骤
- Windows系统:① 访问官方下载页获取最新安装包(如nasm-2.16.01-installer.exe);② 双击安装,建议勾选“Add NASM to system PATH”(若未勾选,需手动配置:右键“此电脑”→属性→高级系统设置→环境变量→系统变量→PATH→编辑,添加NASM安装目录,如“C:\nasm”);③ 验证:打开命令提示符,输入
nasm -v,显示版本信息即配置成功。 - Linux/MacOS系统:① 下载对应系统的压缩包(如nasm-2.16.01.tar.gz);② 解压:
tar -zxvf nasm-2.16.01.tar.gz;③ 编译安装:进入解压目录,依次执行./configure、make、sudo make install;④ 验证:终端输入nasm -v,显示版本信息即可。
(2)基础使用流程(以Windows编写“Hello World”为例)
- 编写代码:用文本编辑器(如VS Code)新建文件hello.asm,输入以下代码:
section .datamsg db 'Hello, World!', 0xA ; 定义字符串,0xA为换行符len equ $ - msg ; 计算字符串长度section .textglobal _start_start:; 系统调用sys_writemov rax, 1 ; 系统调用号(1=写操作)mov rdi, 1 ; 文件描述符(1=标准输出)mov rsi, msg ; 字符串地址mov rdx, len ; 字符串长度syscall ; 发起系统调用; 系统调用sys_exitmov rax, 60 ; 系统调用号(60=退出)mov rdi, 0 ; 退出状态码(0=正常)syscall- 编译生成目标文件:命令提示符进入代码目录,输入
nasm -f win64 hello.asm -o hello.o(-f指定输出格式,win64对应64位Windows)。 - 链接生成可执行文件:需借助MinGW-w64的gcc工具,输入
gcc hello.o -o hello.exe。 - 运行:输入
hello.exe,终端输出“Hello, World!”即成功。
下载地址
官方网站:https://www.nasm.us/(首页导航栏“Download”板块,选择对应系统的最新版本安装包/压缩包)