The Intel 8051 is a very popular general purpose microcontroller widely used for small scale embedded systems. Many vendors
such as Atmel, Philips, and Texas Instruments produce MCS-51 family microcontroller chips.
The 8051 is an 8-bit microcontroller with an 8-bit data bus and a 16-bit address bus. The 16-bit address bus can address a
64K (216) byte code memory space and a separate 64K byte data memory space. The 8051 has 4K on-chip read-only code memory, and 128
bytes of internal Random Access Memory (RAM) organized in Harvard Architecture, the details of which will be discussed in
the memory section. The 8051 has two timers/counters, a serial port, 4 general purpose parallel input/output ports, and interrupt
control logic with five sources of interrupts. Besides internal RAM, the 8051 has various Special Function Registers (SFR) such as the accumulator, the B register, and many other control registers.