The 8086 microprocessor has two main internal units - the Bus Interface Unit (BIU) and the Execution Unit (EU). The BIU handles fetching instructions and data from memory and I/O, and contains components like the instruction queue and segment registers. The EU decodes and executes instructions, and contains the ALU, registers, and flag register. The 8086 also has general purpose and special purpose registers that are used for temporary data storage, addressing, and status information.