Table of Contents for Programming Languages: a survey

Motorola 68000

Both and call the Motorola 68000 'elegant' so maybe we should take a look at it.

Also it's listed on . It has an unofficial Debian port but not an official one (it used to have an official Debian port, though).

My purpose in including this section is NOT to teach the reader the basics of assembly language and computer architecture; i assume that the reader already knows that. I just want to give you more food for thought about 'minimal' programming languages.

" The CISCs that failed - DEC VAX and the Motorola 68000 - were the most CISCy.

    Most instructions were variable length.
    Some frequently used instructions could be very long.
    Many instructions had microcode.
    Many operations had side effects.
    They had complicated addressing modes - elegant in their generality, but complicated, sometimes necessitating microcode just to calculate an address. " --

Said to be very regular [1], and much liked [2].


A descendent is the ColdFire? processor, which is a simplified 68000


instructions mentioned on

arith: ADD, SUB, AND, OR, MULU, other: MOVE, STOP, shifts: LSL, LSR, ASL, ASR, ROL, ROR, ROXL, ROXR bit ops: BTST, BSET, BCLR, BCHG (BCHG a b means flip bit a within b)

instructions mentioned on :

la/lw/ADR/LDR (LOAD), sw, STR (store), addu/ADD, subu/SUB, MUL, ADDIU, MOV, ori, AND

ColdFire (simplified 68000)

" ColdFire?, Motorola’s attempt to simplify and “RISC-ify” the venerable 68K architecture. Stripping down the 68K instruction set to just its essentials succeeded in reducing ColdFire’s? complexity, slashing its power consumption and dropping its cost, but it also proved that “partially software compatible” makes about as much sense as “partially pregnant.” -- [3]

Note that Coldfire is dead; afaik no new Coldfire parts have been introduced since 2010 [4].

floating point unit also has:

MAC (multiply accumulate) unit also has:

Addressing modes:



The 6800

6800 descendents

Besides 68000 and ColdFire?, there are some Freescale 8-bit and 16-bit MCUs, such as the HC08, HCS08, HCS12, HC16, RS08. Dunno if there is a simple name for all of those. Maybe MC6800? According to , these are generally descended from the 6805.


Also, the 6502 was partially inspired by the 6800:

"The MOS Technology 650X family represents a conscious attempt of eight former Motorola employees who worked on the development of the 6800 system to put out a part that would replace and outperform the 6800, yet undersell it. With the benefit of hindsight gained on the 6800 project, the MOS Technology team ..." [5]