Aasm is an advanced assembler designed to support several target architectures and output file formats using plugins. It has been designed to be easily extended and, should be considered as a good alternative to monolithic assembler development for each new target CPUs and binary file formats.

Aasm should make assembly programming easier for developer, by providing a set of advanced features including symbol scopes, an expressions engine, big integer support, macro capability, numerous and accurate warning messages... Its dynamic modular architecture enables Aasm to extend its set of features with plug-ins by taking advantages of dynamic libraries.

The input module supports Intel syntax (like nasm, tasm, masm, etc.). The x86 assembler module supports all opcodes up to P6 including MMX, SSE and 3DNow! extensions. A Sparc assembler module is available too. Several output modules are available for ELF, COFF, IntelHex, and raw binary formats.