ensamblador libre para la plataforma Intel x86. Puede ser usado para escribir programas tanto de 16 bits como de 32 bits (IA-32). En el NASM, si se usan las bibliotecas correctas, los programas de 32 bits se pueden escribir de una manera tal para que sean portables entre cualquier sistema operativo x86 de 32 bits. El paquete tambin incluye un desensamblador, el NDISASM
Caractersticas.- El NASM puede generar varios formatos binarios en cualquier
mquina, incluyendo COFF (y el ligeramente diferente formato Portable Executable usado por Microsoft Windows), el a.out, ELF, Mach-O, y el formato binario nativo Minix. El NASM incluso define su propio formato binario, RDOFF, que es usado actualmente solamente por el proyecto del sistema operativo RadiOS). La variedad de formatos de la salida permite a uno portar los programas a virtualmente cualquier sistema operativo x86. Adems, el NASM puede crear archivos binarios planos, usables para escribir bootloaders (gestores de arranque), imgenes ROM, y varias facetas del desarrollo sistemas operativos.
MASM.- El Microsoft Macro Assembler (MASM) es
un ensamblador para la familia x86 de microprocesadores. Fue producido originalmente por Microsoft para el trabajo de desarrollo en su sistema operativo MS-DOS, y fue durante cierto tiempo el ensamblador ms popular disponible para ese sistema operativo. El MASM soport una amplia variedad de facilidades para macros y programacin estructurada, incluyendo construcciones de alto nivel para bucles, llamadas a procedimientos y alternacin (por lo tanto, MASM es un ejemplo de un ensamblador de alto nivel). Versiones posteriores agregaron la capacidad de producir programas para los sistemas operativos Windows. MASM es una de las pocas herramientas de desarrollo de Microsoft para las cuales no haba versiones separadas de 16 bits y 32 bits. Caractersticas.- LA COMPETENCIA A principio de los aos 1990, ensambladores alternativos comenzaron a tomar algo de la cuota de mercado del MASM, como el TASM de Borland, el ensamblador A86, comercializado como shareware, y hacia finales de los aos 1990, el NASM. Sin embargo, dos acontecimientos a finales de los aos 1990 permitieron que el MASM conservara mucha de su cuota de mercado: Primero, Microsoft dej de vender el MASM como un producto comercial y comenz a distribuirlo gratuitamente como parte del Driver Development Kit (DDK) (Kit de Desarrollo de Controladores). Segundo, aparecieron, el paquete MASM32, y los tutoriales sobre Win32 de Iczelion, haciendo posible la programacin de aplicaciones de Windows con el MASM. Combinado con la enorme base instalada de usuarios de MASM, estos dos eventos ayudaron a prevenir la desercin del MASM a otros ensambladores. Hoy en da, MASM sigue siendo el ensamblador nmero uno en la plataforma Win32, a pesar de la competencia de productos nuevos tales como NASM, FASM, GoAsm, y HLA.
GAS.- El gas, o GNU Assembler, es el
ensamblador del proyecto GNU. Es el back end por defecto del GNU Compiler Collection y es usado para compilar Linux y otros sistemas operativos como el sistema operativo GNU. Es una parte del paquete GNU Binutils, y se puede acceder con el comando as desde el shell. Al igual que el resto de aplicaciones GNU, es software libre, y es licenciado bajo GNU General Public License. El gas puede ejecutar como tambin generar ensamblados para un nmero diferente de arquitecturas. Inicialmente utilizaba nicamente la sintaxis de AT&T en lugar de la sintaxis de Intel usada en muchos otros ensambladores, sin embargo, las ltimas versiones soportan dicha sintaxis.
FAMS.- Flat assembler (FASM) es un ensamblador
libre, multi-paso, con el estilo de la sintaxis de Intel que soporta las arquitecturas IA-32 y x86-64. El proyecto fue iniciado en 1999 por Tomasz Grysztar, que en aquella poca era un estudiante no graduado de matemticas en Polonia. El FASM est escrito en lenguaje ensamblador, viene con el cdigo fuente completo, y fue capaz de ensamblarse a s mismo (bootstrapping) desde la versin 0.90 del 4 de mayo de 1999. El primer lanzamiento pblico fue anunciado la 15 de marzo de 2000. Es notable por su velocidad rpida, optimizaciones de tamao, portabilidad, poderosas capacidades de macro, y la comunidad del foro en lnea. Sin embargo, casi no usa opciones en la lnea de comandos. Hay disponibles archivos binarios y de cdigo fuente para Linux, Windows (incluyendo un IDE de desarrollo), DOS, OpenBSD, MenuetOS, OctaOS, y DexOS. FASM contiene vnculos (bindings) para la GUI de Windows y OpenGL. Todas las versiones de FASM pueden generar los siguientes archivos objeto: binarios planos (flat binary), ELF o COFF (clsico o de MS), como tambin executables en formato MZ, ELF o PE. Existe un traslado del ensamblador a la arquitectura ARM, llamado FASMARM. La ltima versin disponible es la 1.70.03, lanzada el 29 junio de 2012.
TASM.- El Turbo Assembler (TASM), un paquete
ensamblador principalmente destinado a la plataforma del IBM PC y sus compatibles. Fue la oferta de Borland en el mercado de herramientas de programacin en lenguaje ensamblador para la familia de los microprocesadores x86. Como se pudiera esperar, trabajaban bien con los compiladores de lenguaje de alto nivel de Borland para los PC, como Turbo C, Turbo BASIC, Turbo Prolog y Turbo Pascal. Junto con el resto de suite de lenguajes de programacin Turbo. Turbo Assembler es mantenido y empaquetado por Embarcadero Delphi y C++Builder. El paquete Turbo Assembler vino junto con el enlazador Turbo Linker, y era interoperable con el depurador Turbo Debugger. Para la compatibilidad con el ensamblador Microsoft Macro Assembler (MASM) de Microsoft, TASM tambin poda ensamblar los archivos de cdigo fuente del MASM por medio de su modo MASM. Al igual que ste, es un ensamblador de alto nivel. Turbo Assembler tambin se refiere a un ensamblador comn, basado en el microprocesador 6502 para el Commodore 64, creado por la compaa alemana Omikron en 1985. Este producto no se relaciona con el ensamblador de Borland.