Comparison of assemblers
From Wikipedia, the free encyclopedia
This is a list of assemblers: computer programs that translate ("assemble") assembly language source code into binary programs.
Multiple target assemblers
- GNU Assembler (gas): GPL: many target instruction sets including ARM architecture, Atmel AVR, x86, Freescale 68HC11, Freescale v4e, Motorola 68k, TI MSP430, Zilog Z80, PowerPC, IBM System z
- ASxxxx Cross Assembler (part of the Small Device C Compiler project): GPL: several target instruction sets including Intel 8051, Zilog Z80, Freescale 68HC08, PIC microcontroller
- Vasm portable and retargetable assembler: Target instruction sets including 680x0, Coldfire, PowerPC, C16x/ST10, 6502, Zilog Z80.
- The Amsterdam Compiler Kit (ACK) targets many architectures of the 1980s, including 6502, 6800, 680x0, ARM, x86, Zilog Z80 and Z8000.
Single target assemblers
6502 assemblers
680x0 assemblers
Assembler | License | Instruction set | Host platform |
---|---|---|---|
A68K | Free | Motorola 680x0 | Commodore Amiga |
ASM-One Macro Assembler | Free | Motorola 680x0 | Commodore Amiga |
Digital Research Assembler | Proprietary | Motorola 680x0 | Atari ST |
Fantasm | Proprietary | Motorola 680x0 | Apple Macintosh |
GFA-Assembler | Proprietary | Motorola 680x0 | Atari ST |
GST Macro Assembler | Proprietary | Motorola 680x0 | Atari ST |
HiSoft DevPac Assembler | Proprietary | Motorola 680x0 | Commodore Amiga, Atari ST |
Mac Assembler | Proprietary | Motorola 680x0 | Apple Macintosh |
MaxonASM | Proprietary | Motorola 680x0 | Commodore Amiga |
Metacomco Macro Assembler | Proprietary | Motorola 680x0 | Commodore Amiga, Atari ST |
MPW Assembler | Proprietary | Motorola 680x0 | Apple Macintosh |
OMA | Proprietary | Motorola 680x0 | Commodore Amiga |
PhxAss | Free | Motorola 680x0 | Commodore Amiga |
Seka Assembler | Proprietary | Motorola 680x0 | Commodore Amiga, Atari ST |
ARM assemblers
Assembler | License | Instruction set | Host platform |
---|---|---|---|
Archimedes Assembler | Proprietary | ARM | Acorn Archimedes |
ARM, inc. armasm | Proprietary | ARM | Linux, Windows |
FASMARM | Free | ARM | various |
IAR ARM Assembler | Proprietary | ARM | Windows |
Microsoft armasm | Proprietary | ARM | Visual Studio 2005 |
IBM mainframe assemblers
Assembler | License | Instruction set | Host platform |
---|---|---|---|
BAL | Free | IBM System/360 | IBM BPS/360 |
Dignus Systems/ASM | Proprietary | z/Architecture | numerous |
HLASM | Proprietary | z/Architecture | z/Architecture |
IBM Assembler XF | Proprietary | IBM System/370 | IBM System/370 |
PL360 | Free | IBM System/360 | IBM System/360 |
Power Architecture assemblers
Assembler | License | Instruction set | Host platform |
---|---|---|---|
IBM AIX assembler | Proprietary | POWER | IBM AIX |
MPW Power Assembler | Proprietary | PowerPC | Apple Power Macintosh |
Power Fantasm | Proprietary | PowerPC | Apple Power Macintosh |
StormPowerASM | Proprietary | PowerPC | PowerPC Amiga |
x86 assemblers
Assembler | OS | Open source | License | x86-64 | Active Development |
---|---|---|---|---|---|
A86/A386 | Windows, DOS | No | Proprietary | No | No |
ACK | Linux, Minix, Unix-like | Yes | BSD since 2003 | No | 1985-? |
Arrowsoft Assembler | DOS | No | Public Domain | No | No |
IBM ALP | OS/2 | No | Proprietary | No | No |
AT&T | Unix System V | No | Proprietary | No | 1985-? |
Bruce D. Evans' as86 | Minix 1.x, 16-bit part in Linux | Yes | GPL | No | 1988-2001 |
Digital Research ASM86 | CP/M-86, DOS, Intel's ISIS and iRMX | No | Proprietary | No | 1978-1992 |
DevelSoftware Assembler | Windows, Linux, Unix-like | No | Free | Listed, N/A | No |
FASM | Windows, DOS, Linux, Unix-like | Yes | BSD with added Copyleft | Yes | Yes |
GAS | Unix-like, Windows, DOS, OS/2 | Yes | GPL | Yes | Since 1987 |
GoAsm | Windows | No | Free | Yes | Yes |
HLA | Windows, Linux, FreeBSD, Mac OS X | Yes | Public domain | No | Yes |
JWASM | Windows, DOS, Linux, FreeBSD, OS/2 | Yes | Sybase Open Watcom Public License | Yes | Yes |
LZASM | Windows, DOS | No | Free | No | No |
MASM | Windows, DOS, OS/2 | No | Microsoft EULA | Yes | Since 1981 |
Mical a86 | Unix, DOS, PC/IX | Yes | ? | No | 1982-1984 |
NASM | Windows, Linux, Mac OS X, DOS, OS/2 | Yes | BSD | Yes | Yes |
Tim Paterson's ASM | 86-DOS, DOS DEBUG | No | Proprietary | No | 1979-1983 |
POASM | Windows, Windows Mobile | No | Free | Yes | Yes |
RosAsm | Windows | Yes | GPL | No | No |
SLR's OPTASM | DOS | No | Proprietary | No | No |
TASM | Windows, DOS | No | Proprietary | No | ? |
WASM | Windows, DOS, OS/2 | Yes | Sybase Open Watcom Public License | No | ? |
TCCASM | Unix-like, Windows | Yes | LGPL | Yes | Yes |
Xenix | Xenix 2.3 and 3.0 (before 1985) | No | Proprietary | No | 1982-1984 |
Yasm | Windows, DOS, Linux, Unix-like | Yes | BSD | Yes | Yes |
- ^ Part of the Minix 3 source tree, but without obvious development activity. The full source history is available.
- ^ Developed by Interactive in 1986 when they ported System V to Intel iAPX286 and 80386 architectures. Archetypical of ATT syntax because it was used as reference for GAS. Still used for The SCO Group's products, Unixware and OpenServer.
- ^ Home site does not appear active any more. Also offered as part of FreeBSD Ports, in bcc-1995.03.12.
- ^ Active and supported, but not advertised.
- ^ Developed in 1982 at MIT as a cross-assembler, it was picked up by Interactive in 1983 when they developed PC/IX under IBM contract. The syntax was later used as base for ACK assembler, to be used in Minix 1.x toolchain.
- ^ RosAsm project on WebArchive.org.
- ^ Part of the C++Builder Tool Chain, but not sold as a stand-alone product, or marketed since the CodeGear spin-off; Borland was still selling it until then. Version 5.0, the last, is dated 1996.
- ^ Turbo Assembler was developed as "Turbo Editasm" by Uriah Barnett from Speedware Inc (Sacramento, CA) between 1984 and 1987. It was later sold to (or marketed by) Borland as their Turbo Assembler.
Other architectures
Assembler | License | Instruction set | Host platform |
---|---|---|---|
ALM (Assembly Language for Multics) | MIT License | GE-645 Honeywell 6180 |
GE-645 Honeywell 6180 |
Babbage | Proprietary | GEC 4000 series | GEC 4000 series |
COMPASS[1] | Proprietary | CDC mainframe | CDC mainframe |
MACRO-10 | Free | PDP-10 | PDP-10 |
MACRO-11 | Unknown | PDP-11 | PDP-11 |
MACRO-32 | Unknown | VAX | VAX |
PASMO | GPL | Zilog Z80 | numerous |
MRS | GPL | Zilog Z80, 8080 | ZX Spectrum, PMD-85 |
ASEM-51 | Free | 8051 | Embedded Systems |
GPASM | GPL | PIC microcontroller | many |
ID3E | Free for academic use | SC123 | SC123 emulator |
MIPS | Free | MIPS architecture | MIPS architecture |
SOAP (Symbolic Optimal Assembly Program) |
Proprietary | IBM 650 | IBM 650 |
MPW IIgs Assembler | Proprietary | WD 65C816 | Apple IIgs |
MetaSymbol | Free | SDS/XDS Sigma systems | SDS/XDS Sigma systems |
Autocoder[2] | Free | IBM 705, 14xx, 1410, 7010, 7070, 7072, 7074, 7080 | various |
FAP (Fortran Assembly Program) |
Free | IBM 709, 704x, 709x | various |
MAP (Macro Assembly Program) |
Free | IBM 709, 704x, 709x | various |
Symbolic Programming System (SPS)[3] | Free | IBM 14xx, 1620, 1710 | IBM 1401, 1440, 1460, 1620, 1710 |
Notes and references
|
This article is issued from Wikipedia. The text is available under the Creative Commons Attribution/Share Alike; additional terms may apply for the media files.