您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>主機(jī)配件>cpu>

8086結(jié)構(gòu) - 一文看懂8088和8086微型計(jì)算機(jī)的區(qū)別

2018年04月16日 14:42 網(wǎng)絡(luò)整理 作者: 用戶評論(0
關(guān)鍵字:8086(18426)

  8086結(jié)構(gòu):

  1、總線接口單元

  總線接口部件由下列各部分組成

 ?、?個段地址寄存器:

  CS(code segment)——16位的代碼段寄存器;

  DS(data segment)——16位的數(shù)據(jù)段寄存器;

  ES(extra segment)——16位的擴(kuò)展段寄存器;

  SS(stack segment)——16位的堆棧段寄存器;

  ⑵16位的指令指針寄存器IP;

 ?、?0位的地址加法器;

  ⑷6字節(jié)的指令隊(duì)列緩沖器。

  2、執(zhí)行單元

  執(zhí)行部件由下列幾個部分組成:

 ?、?個通用寄存器:即AX、BX、CX、DX,BP,SP,SI,DI ;

  其中,4個數(shù)據(jù)寄存器:AX、BX、CX、DX;

  2個地址指針寄存器:BP(base pointer),SP(stack pointer);

  2個變址寄存器:SI(source index),DI(destination index) [2] ;

 ?、茦?biāo)志寄存器FR(flags register);

 ?、撬阈g(shù)邏輯單元ALU(arithmetic logic unit)。

  EU負(fù)責(zé)全部指令的執(zhí)行,同時向BIU輸出數(shù)據(jù)(操作結(jié)果),并對寄存器和標(biāo)志寄存器進(jìn)行管理。在ALU中進(jìn)行16位運(yùn)算,數(shù)據(jù)傳送和處理均在EU控制下執(zhí)行。

一文看懂8088和8086微型計(jì)算機(jī)的區(qū)別

  8086cpu結(jié)構(gòu)圖

  8086的兩種工作方式:

  1、最小模式

  用于由8086單一微處理器構(gòu)成的小系統(tǒng)。在這種方式下,由8086CPU直接產(chǎn)生小系統(tǒng)所需要的全部控制信號。器系統(tǒng)特點(diǎn)是:總線控制邏輯直接由8086CPU產(chǎn)生和控制。若有CPU以外的其他模塊想占用總線,則可以向CPU提出請求,在CPU允許并響應(yīng)的情況下,該模塊才可以獲得總線控制權(quán),使用完后,又將總線控制權(quán)還給CPU。

  2、最大模式

  用于實(shí)現(xiàn)多處理機(jī)系統(tǒng),其中,8086CPU被稱為主處理器,其他處理器被稱為協(xié)處理器。在這種方式下,8086CPU不直接提供用于存儲器或I/O讀寫的讀寫命令等控制信號,而是將當(dāng)前要執(zhí)行的傳送操作類型編碼為3個狀態(tài)位輸出,由總線控制器8288對狀態(tài)信號進(jìn)行譯碼產(chǎn)生相應(yīng)控制信號。最大模式系統(tǒng)的特點(diǎn)是:總線控制邏輯由總線控制器8288產(chǎn)生和控制,即8288將主處理器的狀態(tài)和信號轉(zhuǎn)換成系統(tǒng)總線命令和控制信號。協(xié)處理器只是協(xié)助主處理器完成某些輔助工作,即被動的接受并執(zhí)行來自主處理器的命令。和8086配套使用的協(xié)處理器有兩個:一個是專用于數(shù)值計(jì)算的協(xié)處理器8087,另一個是專用于輸入輸出操作的協(xié)處理器8089。8087通過硬件實(shí)現(xiàn)高精度整數(shù)浮點(diǎn)數(shù)運(yùn)算。8089有其自身的一套專門用于輸入輸出操作的命令系統(tǒng),還可帶局部存儲器,可以直接為輸入輸出設(shè)備服務(wù)。增加協(xié)處理器,使得浮點(diǎn)運(yùn)算和輸入輸出操作不再占用8086時間,從而大大提高了系統(tǒng)的運(yùn)行效率。

  三、8088和8086微型計(jì)算機(jī)的區(qū)別

  8088和8086兩者的執(zhí)行部件EU完全相同,其指令系統(tǒng),尋址能力及程序設(shè)計(jì)方法都相同,所以兩種CPU完全兼容。8086和8088在芯片內(nèi)部均采用16位數(shù)據(jù)傳輸,所以都稱為16位微處理器,但8086每周期能傳送或接收16位數(shù)據(jù),而8088每周期只采用8位。因?yàn)樽畛醯拇蟛糠衷O(shè)備和芯片是8位的,而8088的外部8位數(shù)據(jù)傳送、接收能與這些設(shè)備相兼容。8088采用40針的DIP封裝,工作頻率為6.66MHz、7.16MHz或8MHz,微處理器集成了大約29000個晶體管。8088和8086的不同大致可歸納為以下幾個:

  1、外部數(shù)據(jù)總線位數(shù)的差別

  8086CPU的外部數(shù)據(jù)總線有16位,在一個總線周期內(nèi)可輸入/輸出一個字(16位數(shù)據(jù)),使系統(tǒng)處理數(shù)據(jù)和對中斷響應(yīng)的速度得以加快;而8088CPU的外部數(shù)據(jù)總線為8位,在一個總線周期內(nèi)只能輸入/輸出一個字節(jié)(8位數(shù)據(jù))。也正因?yàn)槿绱耍?088被稱為準(zhǔn)16位處理器。

  2、指令隊(duì)列容量的差別

  8086CPU的指令隊(duì)列可容納6個字節(jié),且在每個總線周期中從存儲器中取出2個字節(jié)的指令代碼填入指令隊(duì)列,這可提高取指操作和其它操作的并行率,從而提高系統(tǒng)工作速度;而8088CPU的指令隊(duì)列只能容納4個字節(jié),且在每個總線周期中只能取一個字節(jié)的指令代碼,從而增長了總線取指令的時間,在一定條件下可能影響取指令操作和其它操作的并行率。

  3、引腳特性的差別

  兩種CPU的引腳功能是相同的,但有以下幾點(diǎn)不同:

  (1)AD15~AD0的定義不同:在8086中都定義為地址/數(shù)據(jù)復(fù)用總線;而在8088中,由于只需用8條數(shù)據(jù)總線,因此,對應(yīng)予8086的AD15~AD8這8條引腳,只作地址線使用。

 ?。?)34號引腳的定義不同:在8086中定義為BHE信號;而在8088中定義為SS0,它與DT/R,IO/M一起用作最小方式下的周期狀態(tài)信號。

 ?。?)28號引腳的相位不同:在8086中為M/IO;而在8088中被倒相,改為IO/M,以便與8080/8085系統(tǒng)的總線結(jié)構(gòu)兼容。

非常好我支持^.^

(137) 90.7%

不好我反對

(14) 9.3%

( 發(fā)表人:姚遠(yuǎn)香 )

      發(fā)表評論

      用戶評論
      評價(jià):好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?