NASM

NASM

www.nasm.us

1

About this website

NASM (The Netwide Assembler) is a free, open-source 80x86 and x86-64 assembler designed for portability and modularity, supporting a wide range of object file formats including ELF (32 and 64-bit for Linux, BSD), a.out, COFF, Mach-O (for macOS/iOS), Win32/Win64 (Microsoft COFF), RDOFF (custom format), and raw binary output. Originally created in 1996 by Simon Tatham and Julian Hall, NASM has been the assembler of choice for low-level systems programming, operating system development, reverse engineering, and exploit development for over 25 years. Key features include: support for all x86 and x86-64 instruction set extensions (MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX-512, FMA, BMI, SHA, MPX), comprehensive macro processor with multi-line macros, conditional assembly, string manipulation macros, and macro overloading, structured directives (.if/.else/.endif, .while/.endw, .repeat/.until) for high-level control flow in assembly, support for both Intel and AT&T syntax (with nasm -f elf -g for debugging with GDB), position-independent code generation (PIC), link-time optimization compatibility, debug information generation (DWARF for ELF, CodeView for Win32), and a built-in preprocessor. NASM is cross-platform, building and running on Linux, Windows, macOS, DOS, and BSD. It is used by major projects including the Linux kernel assembly files, SQLite, FFmpeg (hand-optimized SIMD code), and numerous CTF and security research tools.

Statistics

1
Views
0
Clicks
0
Like
0
Dislike

Comments

Log In to post a comment

No comments yet. Be the first!