INTEL 8086
\ˈɪntɛl ˈe͡ɪt θˈa͡ʊzənd ən ˈe͡ɪtisˈɪks], \ˈɪntɛl ˈeɪt θˈaʊzənd ən ˈeɪtisˈɪks], \ˈɪ_n_t_ɛ_l ˈeɪ_t θ_ˈaʊ_z_ə_n_d ə_n ˈeɪ_t_i_s_ˈɪ_k_s]\
Sort: Oldest first
-
A sixteen bit microprocessor chip used in earlyIBM PCs. The Intel 8088 was a version with an eight-bitexternal data bus.The Intel 8086 was based on the design of the Intel 8080 andIntel 8085 (it was source compatible with the 8080) with asimilar register set, but was expanded to 16 bits. The BusInterface Unit fed the instruction stream to the ExecutionUnit through a 6 byte prefetch queue, so fetch and executionwere concurrent - a primitive form of pipelining (8086instructions varied from 1 to 4 bytes).It featured four 16-bit general registers, which could alsobe accessed as eight 8-bit registers, and four 16-bit indexregisters (including the stack pointer). The dataregisters were often used implicitly by instructions,complicating register allocation for temporary values. Itfeatured 64K 8-bit I/O (or 32K 16 bit) ports and fixedvectored interrupts. There were also four segmentregisters that could be set from index registers.The segment registers allowed the CPU to access 1 meg ofmemory in an odd way. Rather than just supplying missingbytes, as most segmented processors, the 8086 actually shiftedthe segment registers left 4 bits and added it to the address.As a result, segments overlapped, and it was possible to havetwo pointers with the same value point to two different memorylocations, or two pointers with different values pointing tothe same location. Most people consider this a braindamaged design.Although this was largely acceptable for assembly language,where control of the segments was complete (it could even beuseful then), in higher level languages it caused constantconfusion (e.g. near/far pointers). Even worse, this madeexpanding the address space to more than 1 meg difficult. Alater version, the Intel 80386, expanded the design to 32bits, and "fixed" the segmentation, but required extra modes(suppressing the new features) for compatibility, and retainsthe awkward architecture. In fact, with the right assembler,code written for the 8008 can still be run on the most recentIntel 486.The Intel 80386 added new op codes in a kludgy fashionsimilar to the Zilog Z80 and Zilog Z280. The Intel486 added full pipelines, and clock doubling (like theZilog Z280).So why did IBM chose the 8086 series when most of thealternatives were so much better? Apparently IBM's ownengineers wanted to use the Motorola 68000, and it was usedlater in the forgotten IBM Instruments 9000 LaboratoryComputer, but IBM already had rights to manufacture the 8086,in exchange for giving Intel the rights to its bubble memorydesigns. Apparently IBM was using 8086s in the IBMDisplaywriter word processor.Other factors were the 8-bit Intel 8088 version, which coulduse existing Intel 8085-type components, and allowed thecomputer to be based on a modified 8085 design. 68000components were not widely available, though it could useMotorola 6800 components to an extent.Intel bubble memory was on the market for a while, butfaded away as better and cheaper memory technologies arrived.
By Denis Howe
Word of the day
SQ10,643
- A serotonin antagonist with limited antihistaminic, anticholinergic, and immunosuppressive activity.