NASM, also known as the Netwide Assembler, is an Intel syntax assembler (as opposed to GAS's AT&T Syntax) that runs on many platforms, such as MS-DOS (DJGPP), Win32 (Cygwin), Linux (RPM), etc.

It's license is under the LGPL, and it's source is available via CVS. The latest version NASM (0.98.38) can be found at http://nasm.sourceforge.net or at http://sourceforge.net/projects/nasm.

NASM's syntax is closer to the actual machine code than most other assemblers, as it has fewer redundant macros than MASM or TASM, and it will assemble for almost any OS.

In addition, NASM will compile into many different object formats, such as MS (.OBJ), COFF (.o), etc. It also supported by RHIDE (Which calls to NASM to build the .o files, then uses GNU linker). It can also build COM files and SYS files on its own.

On the whole, NASM is a versatile compiler, especially for those who don't write in AT&T Syntax Assembly and it also comes with its own disassembler called NDISASM.

This writeup is under the GNU Free Documentation License