Comparison of assemblers

From Wikipedia, the free encyclopedia
  (Redirected from List of assemblers)
Jump to: navigation, search

This is a list of assemblers: computer programs that translate ("assemble") assembly language source code into binary programs.

Multiple target assemblers[edit]

Single target assemblers[edit]

6502 assemblers[edit]

Assembler License Instruction set Host platform
64tass GPL MOS Technology 6502, WDC 65C02, WDC 65816/65802 various
ACME GPL MOS Technology 6502, WDC 65C02, WDC 65816/65802 various
ASM6 Public domain MOS Technology 6502 various
ATASM GPL MOS Technology 6502 various
Atari Assembler Editor Proprietary MOS Technology 6502 Atari 8-bit family
C64List Proprietary MOS Technology 6502 Commodore 64
CA65 GPL MOS Technology 6502, WDC 65C02, WDC 65816/65802 various
dasm GPL MOS Technology 6502, others various
dreamass GPL MOS Technology 6502, WDC 65816/65802 various
French Silk Proprietary MOS Technology 6502 Commodore 64
Kick Assembler Proprietary MOS Technology 6502 various
Lisa Proprietary MOS Technology 6502 Apple II series
MAC/65 Proprietary MOS Technology 6502 Atari 8-bit family
MADS Public domain MOS Technology 6502, WDC 65816/65802 various
Merlin Proprietary MOS Technology 6502, WDC 65C02, WDC 65816/65802 Apple II series, Commodore 64, Commodore 128
Ophis MIT License MOS Technology 6502, WDC 65C02, MOS Technology 4502/4510 (experimental) various
TMPx Proprietary MOS Technology 6502 various
vasm Free MOS Technology 6502 various
WLA DX GPL MOS Technology 6502, others various
XA65 GPL MOS Technology 6502, others various
XASM Public domain MOS Technology 6502 various

680x0 assemblers[edit]

Assembler Open source License Instruction set Host platform Active Development
A68K No Free Motorola 680x0 Commodore Amiga No
ASM-One Macro Assembler No Free Motorola 680x0 Commodore Amiga No
Digital Research Assembler No Proprietary Motorola 680x0 Atari ST No
Fantasm No Proprietary Motorola 680x0 Apple Macintosh No
GFA-Assembler No Proprietary Motorola 680x0 Atari ST No
GST Macro Assembler No Proprietary Motorola 680x0 Atari ST No
HiSoft DevPac Assembler No Proprietary Motorola 680x0 Commodore Amiga, Atari ST No
Mac Assembler No Proprietary Motorola 680x0 Apple Macintosh No
MaxonASM No Proprietary Motorola 680x0 Commodore Amiga No
Metacomco Macro Assembler No Proprietary Motorola 680x0 Commodore Amiga, Atari ST No
MPW Assembler No Proprietary Motorola 680x0 Apple Macintosh No
OMA No Proprietary Motorola 680x0 Commodore Amiga No
PhxAss No Free Motorola 680x0 Commodore Amiga No
Pure Assembler No Proprietary Motorola 680x0 Atari ST No
Data Becker Profimat No Proprietary Motorola 680x0 Atari ST No
Seka Assembler No Proprietary Motorola 680x0 Commodore Amiga, Atari ST No
TurboAss No Free Motorola 680x0 Atari ST No
vasm Yes Free Motorola 680x0 various Yes

ARM assemblers[edit]

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
vasm Free ARM various

IBM mainframe assemblers[edit]

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 D Free IBM System/360 IBM DOS/360
IBM Assembler F Free IBM System/360 IBM OS/360
IBM Assembler XF Free IBM System/370 IBM System/370
PL360 Free IBM System/360 IBM System/360

Power Architecture assemblers[edit]

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
vasm Free PowerPC various

x86 assemblers[edit]

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-?[1]
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-?[2]
Bruce D. Evans' as86 Minix 1.x, 16-bit part in Linux Yes GPL No 1988-2001[3]
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[4]
Mical a86 Unix, DOS, PC/IX Yes ? No 1982-1984[5]
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[6]
SLR's OPTASM DOS No Proprietary No No
TASM Windows, DOS No Proprietary No ?[7][8]
WASM Windows, DOS, OS/2 Yes Sybase Open Watcom Public License No ?
TCCASM Unix-like, Windows Yes LGPL Yes Yes
vasm various Yes Free No 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
  1. ^ Part of the Minix 3 source tree, but without obvious development activity. The full source history is available.
  2. ^ 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.
  3. ^ Home site does not appear active any more. Also offered as part of FreeBSD Ports, in bcc-1995.03.12.
  4. ^ Active and supported, but not advertised.
  5. ^ 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.
  6. ^ RosAsm project on WebArchive.org.
  7. ^ 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.
  8. ^ 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[edit]

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
vasm Free Zilog Z80, Motorola 6800 family various
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[edit]

  1. ^ COMPASS is actually a family of assemblers for disparate machines.
  2. ^ AUTOCODER is actually a family of assemblers for disparate machines.
  3. ^ SPS is actually a family of assemblers for disparate machines.