The 8086 microprocessor has a 16-bit arithmetic logic unit and data bus. It uses a 20-bit address bus to access up to 1 megabyte of memory addressed through segment registers. The 8086 has separate bus interface and execution units, with registers in each unit used for fetching instructions, computing addresses, and executing operations. Key registers include the instruction pointer, segment registers, and general purpose registers like the accumulator, base, count, and data registers.