Assembly, een van de oudste programmeertalen, wordt tegenwoordig vaak gebruikt voor het optimaliseren van toepassingen. Nasm kan assemblycode omzetten naar verschillende binaire objectformaten zoals elf, coff, Mach-O, win32 en win64. De programmeurs hebben de ontwikkeling van Nasm weer stevig opgepakt, waardoor er inmiddels ondersteuning voor x86-64 en sse3, 4.1, 4.2 en 5 is toegevoegd. Versie 2.07 van Nasm is enkele dagen geleden uitgebracht, voorzien van de volgende lijst met aanpassingen:
Version 2.07:Version 2.06:
- NASM is now under the 2-clause BSD license.
- Fix the section type for the .strtab section in the elf64 output format.
- Fix the handling of COMMON directives in the obj output format.
- New ith and srec output formats; these are variants of the bin output format which output Intel hex and Motorola S-records, respectively.
- rdf2ihx replaced with an enhanced rdf2bin, which can output binary, COM, Intel hex or Motorola S-records.
- The Windows installer now puts the NASM directory first in the PATH of the "NASM Shell".
- Revert the early expansion behavior of %+ to pre-2.06 behavior: %+ is only expanded late.
- Yet another Mach-O alignment fix.
- Don't delete the list file on errors. Also, include error and warning information in the list file.
- Support for 64-bit Mach-O output.
- Fix assert failure on certain operations that involve strings with high-bit bytes.
Version 2.05.01:
- This release is dedicated to the memory of Charles A. Crayne, long time NASM developer as well as moderator of comp.lang.asm.x86 and author of the book Serious Assembler. We miss you, Chuck.
- Support for indirect macro expansion (%[...]).
- %pop can now take an argument.
- The argument to %use is no longer macro-expanded. Use %[...] if macro expansion is desired.
- Support for thread-local storage in ELF32 and ELF64.
- Fix crash on %ifmacro without an argument.
- Correct the arguments to the POPCNT instruction.
- Fix section alignment in the Mach-O format.
- Update AVX support to version 5 of the Intel specification.
- Fix the handling of accesses to context-local macros from higher levels in the context stack.
- Treat WAIT as a prefix rather than as an instruction, thereby allowing constructs like O16 FSAVE to work correctly.
- Support for structures with a non-zero base offset.
- Correctly handle preprocessor token concatenation (see section 4.3.7) involving floating-point numbers.
- The PINSR series of instructions have been corrected and rationalized.
- Removed AMD SSE5, replaced with the new XOP/FMA4/CVT16 (rev 3.03) spec.
- The ELF backends no longer automatically generate a .comment section.
- Add additional "well-known" ELF sections with default attributes.
- Fix the -w/-W option parsing, which was broken in NASM 2.05.