Intel 8086


Intel 8086 (正體)

Intel 8086 微處理器
Intel 8086 微处理器

8086是由Intel1978年所设计的16位元微处理器芯片,同时也是为x86架构系列之开端。之后不久,又推出了Intel 8088,它在外部使用8位元地质总线连接,成为8086的一个低成本替代品。8086以80808085(它与8080有汇编语言上的原始码相容性)的设计为基础,拥有类似的暂存器集合,但是扩充为16位元。总线接口单元(Bus Interface Unit)透过6字节预存(prefetch) 的贮列(queue)将指令送给执行单元(Execution Unit),所以取指令和执行是同步的–一种 pipelining 的原始形式(8086 指令长度变化从 1 到 6 字节)。

8086有四个完全一样的16位元暂存器,但也能够当作八个8位元暂存器来存取;以及四个16位元索引暂存器(包含堆栈索引)。数据暂存器通常由指令隐含地使用,针对暂存值需要复杂的暂存器配置。它提供64K 8 位元的输出输入(或32K 16 位元)埠,以及固定的向量中断。大部分的指令只能够存取一个内存位址,所以其中一个运算子必须是一个暂存器。运算结果会储存在运算子中的一个。

8086有4个内存区段(segment) 暂存器,可以通过索引暂存器来设定。区段暂存器可以让CPU一种当时是全新的方式存取多达1MB之内存。在现今有区段的处理器中,8086 把区段暂存器左移 4 位元然后把它加上去寻址。这通常被认为是一个不太好的设计,因为这么做会让各区段有重叠。尽管这样对于汇编语言而言会显得有用——因为可以充分控制区段,但同时却使高级语言中的指针 (像是 C 程式语言)使用 变得困难。它降低了指针的高效率,且有可能产生两个指向同一个地方的指标拥有不同的位址。更坏的是,这种方式产生要让内存扩充到大于1MB的困难。而80286的寻址方式改变让内存扩充较有效率。

处理器的执行时频率介于4.77(在原先的IBM PC)和10 MHz.

一般的执行周期时间 (预估):

  • 加法: 3–4 (暂存器), 9+EA–25+EA (内存存取)
  • 乘法: 70–118 (暂存器), 76+EA–143+EA (内存存取)
  • 搬移: 2 (暂存器), 8+EA–14+EA (内存存取)
  • 进程跳跃: 11–15, 18+EA (内存存取)
  • 远程跳跃: 15, 24+EA (内存存取)

EA: 计算有效位址的时间,范围是5—12个周期

8086没有包含任何的浮点指令,但是可以连接到数学辅助处理器来增加它的能力。Intel 8087是标准版本,但是其他制造商像是Weitek提供了更高效能的产品。

8086的复制产品有NEC V20、V25和V30处理器。

使用8086的微电脑

第一个以8086为基础的商业微电脑是Mycron2000。

IBM Displaywriter文字处理机也使用8086。在大部分显要的所有微处理器中,IBM PC使用了更窄的内存总线版本的8086,也就是Intel 8088

外部连结


Article based on Intel 8086 at FOLDOC, used with permission.


! __







Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History