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

  • Vasm portable and retargetable assembler: Target instruction sets including 680x0, Coldfire, PowerPC, C16x/ST10, 6502, Zilog Z80.

Single target assemblers

6502 assemblers

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
Merlin Proprietary MOS Technology 6502, WDC 65C02, WDC 65816/65802 Apple II series, Commodore 64, Commodore 128
WLA DX GPL MOS Technology 6502, others various
XA65 GPL MOS Technology 6502, others various
XASM Public domain MOS Technology 6502 various

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
  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

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

  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.
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.