(MC68000) The first member of
Motorola, Inc.'s
family of 16- and 32-bit microprocessors. The successor to
the
Motorola 6809 and followed by the
Motorola 68010.
The 68000 has 32-bit registers but only a 16-bit
ALU and
external
data bus. It has 24-bit addressing and a
linear address space, with none of the evil segment registers of
Intel's contemporary processors that make programming them
unpleasant. That means that a single directly accessed
array or structure can be larger than 64KB in size.
Addresses are computed as 32 bit, but the top 8 bits are cut
to fit the address bus into a 64-pin package (address and data
share a bus in the 40 pin packages of the
8086 and
Zilog Z8000).
The 68000 has sixteen 32-bit registers, split into data and
address registers. One address register is reserved for the
Stack Pointer. Any register, of either type, can be used
for any function except direct addressing. Only address
registers can be used as the source of an address, but data
registers can provide the offset from an address.
Like the
Zilog Z8000, the 68000 features a supervisor and
user mode, each with its own
Stack Pointer. The
Zilog Z8000 and 68000 are similar in capabilities, but the 68000 is
32 bits internally, making it faster and eliminating forced
segmentations.
Like many other CPUs of its generation, it can fetch the next
instruction during execution (2 stage
pipeline).
The 68000 was used in many workstations, notably early
Sun-2 machines, and personal computers, notably Apple Computer's first Macintoshes and the
Amiga. It was also
used in most of
Sega's early arcade machines, and in the
Genesis/Megadrive consoles.
Variants of the 68000 include the 68HC000 (a low-power HCMOS
implementation) and the 68008 (an eight-bit data bus version
used in the Sinclair QL).
["The 68000: Principles and Programming", Leo Scanlon, 1981].