The Intel 8086 microprocessor has a 20-bit address bus that can access up to 1 MB of memory. It has a 16-bit word size and uses separate 16-bit address and data buses. The 8086 has a 40-pin dual in-line package and can address memory locations from 00000H to FFFFFH. It has an execution unit with an ALU and instruction decoder, as well as general purpose and pointer/index registers. The 8086 also includes a flag register and bus interface unit with an instruction queue, segment registers, and instruction pointer.