Motorola 6800
| General information | |
|---|---|
| Launched | 1974 |
| Common manufacturer(s) | |
| Performance | |
| Max. CPU clock rate | 1 MHz to 2 MHz |
| Data width | 8 bits |
| Address width | 16 bits |
| Architecture and classification | |
| Instruction set | 6800 |
| History | |
| Successor(s) | |
The Motorola 6800 is an 8-bit processor developed by entirely by Motorola starting in 1971. It was a popular microprocessor that saw a wide range of uses from point-of-sale terminals to arcade games.
Design
Registers
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
The 6800 has very few registers which included two 8-bit accumulators (A and B respectively), a 16-bit index register (I), a 16-bit stack pointer (SP), a 16-bit program counter (PC) and an 8-bit status register.
Flags
The processor maintains an internal status register for storing bit flags representing the state of arithmetic and logic operations.
- Half-carry (H), set if a carry or borrow has been generated out of a BCD operation.
- Interrupt (I), set if the processor will respond to masked interrupt requests.
- Negative (N), set if the result is negative.
- Zero (Z), set if the result is zero.
- Carry (C), set if the last addition operation resulted in a carry, or the last subtraction operation resulted in a borrow.