The Motorola M680x0 is a series of processors. The main line is from the M68000 to the M68060, with the tens digit increasing by one each time (but there is no M68050), but other variants such as the M68012 are sometimes found.
The M68000 and M68010 are hybrid 16/32-bit chips. The internal registers are 32 bits, but the ALU and address bus are 16-bit. This is of little interest to a programmer for these systems, so the M68000 can be regarded as though it were a fully 32-bit processor.
The M680x0 contains eight addressing registers (A0-A7) and eight data registers (D0-D7). In addition there is a program counter and status register. There is no stack pointer, as A7 serves that role.
Instruction set Edit
The M680x0 is nearly orthogonal, far more than most processors used in the 1980s. In other words, there are far fewer special cases involved where something needs a specific addressing mode, or something can only be done with a certain register.
M680x0 binary code is difficult to read because the orthogonality of the processor means instructions are encoded in bit patterns. Therefore, reverse-engineering M680x0 code is best done with a disassembler when possible.