第二章微處理器指令周期_第1頁
第二章微處理器指令周期_第2頁
第二章微處理器指令周期_第3頁
第二章微處理器指令周期_第4頁
第二章微處理器指令周期_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第二章微處理器指令周期第1頁,共18頁,2023年,2月20日,星期三2.2.18086的編程結(jié)構(gòu)

8086分為兩部分,即總線接口部件BIU(BusInterfaceUnit)和執(zhí)行部件EU(ExecutionUnit)。右圖為8086的編程結(jié)構(gòu)圖第2頁,共18頁,2023年,2月20日,星期三1.總線接口部件(BIU)

總線接口部件的功能是負(fù)責(zé)與存儲(chǔ)器、I/O端口傳送數(shù)據(jù)。CPU執(zhí)行指令時(shí),總線接口部件要配合執(zhí)行部件從指定的內(nèi)存單元或者外設(shè)端口中取數(shù)據(jù)或指令,將數(shù)據(jù)先放入“指令隊(duì)列”排隊(duì),當(dāng)需要時(shí),再由執(zhí)行部件EU從中取出;或者把執(zhí)行部件EU的操作結(jié)果傳送到指定的內(nèi)存單元或外設(shè)端口中??偩€接口部件的部分組成:(1)4個(gè)16位的段地址寄存器;

CS——16位的代碼段寄存器:用來存放當(dāng)前程序所在段的段基址;DS——16位的數(shù)據(jù)段寄存器:用來存放當(dāng)前程序所用數(shù)據(jù)段的段基址;ES——16位的擴(kuò)展段寄存器:用來存放輔助數(shù)據(jù)所在段的段基址;SS——16位的堆棧段寄存器:用來存放當(dāng)前程序所用堆棧段的段基址;第3頁,共18頁,2023年,2月20日,星期三(2)16位的指令指針寄存器IP:用來存放下一條指令的偏移地址,IP在當(dāng)前程序運(yùn)行中能夠進(jìn)行自動(dòng)加1的修正,使其指向下一條指令;(3)20位的地址加法器:用來形成20位的物理地址;(4)6字節(jié)的指令隊(duì)列緩沖器。(5)總線控制部件。用來產(chǎn)生并發(fā)出總線控制信號(hào),實(shí)現(xiàn)對存儲(chǔ)器、I/O端口的讀寫控制,并將內(nèi)部總線與外部總線相連接。2.執(zhí)行部件EU執(zhí)行部件EU的功能就是負(fù)責(zé)從指令隊(duì)列取指令并執(zhí)行。它由下列幾個(gè)部分組成:(1)算術(shù)邏輯單元ALU:用來進(jìn)行算術(shù)、邏輯運(yùn)算,以及按照尋址方式計(jì)算尋址單元的偏移量。第4頁,共18頁,2023年,2月20日,星期三(2)暫存器:協(xié)助ALU完成運(yùn)算,用來暫時(shí)存放參加運(yùn)算的數(shù)據(jù)。(3)通用寄存器組:包括4個(gè)通用寄存器,即AX(也稱累加器)、BX、CX、DX;以及4個(gè)專用寄存器:基數(shù)指針寄存器BP:存放數(shù)據(jù)段中某一單元的偏移地址;也可指示堆棧段中某一單元的偏移地址;堆棧指針寄存器SP:存放堆棧棧頂偏移地址;源變址寄存器SI:與數(shù)據(jù)段寄存器DS連用,確定數(shù)據(jù)段中某一存儲(chǔ)單元的地址;目的變址寄存器DI:與數(shù)據(jù)段寄存器DS連用,確定數(shù)據(jù)段中某一存儲(chǔ)單元的地址;(4)16位的標(biāo)志寄存器FR;用來存放控制標(biāo)志和反映CPU運(yùn)行的狀態(tài)特征。(5)EU控制電路:由定時(shí)電路、控制電路和狀態(tài)邏輯電路組合而成。第5頁,共18頁,2023年,2月20日,星期三3.“流水線”結(jié)構(gòu)的指令隊(duì)列總線接口部件BIU和執(zhí)行部件EU并不是同步工作的,每當(dāng)EU從指令隊(duì)列頭部取出一條指令并在分析、執(zhí)行指令這段時(shí)間內(nèi),或當(dāng)指令隊(duì)列中有2個(gè)空字節(jié)時(shí),BIU會(huì)自動(dòng)把指令取到指令隊(duì)列中。當(dāng)指令隊(duì)列已滿(6個(gè)字節(jié)),而且EU對BIU又無總線訪問請求時(shí),BIU便進(jìn)入空閑狀態(tài);但EU在分析、執(zhí)行指令過程中,如須訪問內(nèi)存或I/O設(shè)備,EU就會(huì)向BIU申請總線周期,若BIU總線空閑,就會(huì)立即響應(yīng);若BIU此時(shí)正在取一條指令,EU就必須等待BIU取指令的操作完成以后,才會(huì)得到BIU響應(yīng)。在8086/8088中,EU和BIU這種并行的工作方式有力地提高了工作效率。第6頁,共18頁,2023年,2月20日,星期三4.通用寄存器的用法由于某些寄存器具有良好的通用性,因而被稱為通用寄存器,其中包括AX,BX,CX,DX。通用寄存器主要用來保存算術(shù)或邏輯運(yùn)算的操作數(shù)、中間運(yùn)算結(jié)果。它們既可以作為一個(gè)16位的寄存器使用,也可以分別作為兩個(gè)8位的寄存器使用,高位字節(jié)的寄存器為AH,BH,CH,DH;低位字節(jié)的寄存器為AL,BL,CL,DL。由于這些寄存器具有良好的通用性,使用十分靈活,因而稱為通用寄存器。通用寄存器的特殊用途和隱含用法如表2-1所示。第7頁,共18頁,2023年,2月20日,星期三表2-1寄存器的特殊用途和隱含用法寄存器執(zhí)行操作AX累加器,I/O指令中用作數(shù)據(jù)寄存器整字乘法,整字除法,整字I/O,存放被乘數(shù),乘積,被除數(shù),商ALI/O指令中用作數(shù)據(jù)寄存器字節(jié)乘法,字節(jié)除法,字節(jié)I/O。存放被乘數(shù),乘積,被除數(shù),商查表,十進(jìn)制算術(shù)運(yùn)算中用作累加器;在XLAT(換碼)指令中用作累加器AH字節(jié)乘法,字節(jié)除法在LAHF(標(biāo)志寄存器傳送)指令中用作目標(biāo)寄存器BX用作間接尋址的地址寄存器和基地址寄存器;查表;在XLAT(換碼)指令中用作基地址寄存器第8頁,共18頁,2023年,2月20日,星期三表2-1寄存器的特殊用途和隱含用法CX計(jì)數(shù)寄存器,在LOOP(循環(huán))和串操作中充當(dāng)計(jì)數(shù)器字符串操作,循環(huán)CL在變量的移位和循環(huán)移位指令中用作移位次數(shù)計(jì)數(shù)器DX在乘法、除法指令中作為輔助累加器;在乘法、除法指令中存放乘積高位、被除數(shù)高位或余數(shù)在間接尋址的I/O指令中作為地址寄存器;SP堆棧操作中用作堆棧指針BP在間接尋址中用作基址寄存器;SI在字符串操作中用作變址寄存器;在間接尋址中用作變址寄存器;DI字符串操作第9頁,共18頁,2023年,2月20日,星期三標(biāo)志寄存器(FlagRegister)

標(biāo)志寄存器共有16位,其中有7位未用,已用的9個(gè)標(biāo)志位按功能可分為6個(gè)條件標(biāo)志和3個(gè)控制標(biāo)志。

(1)條件標(biāo)志(條件標(biāo)志用于存放程序運(yùn)行的狀態(tài)信息,由硬件自動(dòng)設(shè)定??刂茦?biāo)志由軟件設(shè)定,用于中斷、串操作等控制):

圖2-2標(biāo)志寄存器結(jié)構(gòu)圖

OFDFIFTFSFZFAFPFCF第10頁,共18頁,2023年,2月20日,星期三OF:溢出標(biāo)志。反映帶符號(hào)數(shù)運(yùn)算結(jié)果是否超過機(jī)器所能表示的數(shù)值范圍,對字節(jié)運(yùn)算為-128~+127,對字運(yùn)算為-32768~+32767。若超過上述范圍稱為“溢出”,OF置1。否則,置0。實(shí)際機(jī)器在進(jìn)行處理時(shí),是判斷最高位的進(jìn)位(CF)與次高位的進(jìn)位是否相同,若二者相同,則OF=0。否則,OF=1。SF:符號(hào)標(biāo)志。反映運(yùn)算結(jié)果的符號(hào)。若結(jié)果為負(fù)數(shù),即最高位為1時(shí),SF置1,否則,置0。SF取值與運(yùn)算結(jié)果最高位一致。ZF:零標(biāo)志。反映運(yùn)算結(jié)果是否為零。若結(jié)果為零,ZF置1,否則,置0。AF:半進(jìn)位標(biāo)志。反映一個(gè)8位量的低4位向高4位有無進(jìn)位或借位。有則置1,否則,置0。用于BCD碼算術(shù)運(yùn)算指令。PF:奇偶標(biāo)志。反映操作結(jié)果的低8位中“1”的個(gè)數(shù)的奇偶性。若“1”的個(gè)數(shù)為偶數(shù),PF置1,否則,置0。CF:進(jìn)位標(biāo)志。反映算術(shù)運(yùn)算后最高位出現(xiàn)進(jìn)位或借位的情況。有則置1,否則,置0。移位和循環(huán)指令也會(huì)改變CF的值。第11頁,共18頁,2023年,2月20日,星期三(2)控制標(biāo)志DF:方向標(biāo)志。進(jìn)行字符串操作時(shí),每執(zhí)行一條串操作指令,對地址會(huì)進(jìn)行一次自動(dòng)調(diào)整,由DF決定地址是增還是減。若DF為1,則為減,否則為增。IF:表示系統(tǒng)是否允許“外部可屏蔽中斷”(其含義見后述“中斷”內(nèi)容)。若IF為1,表示允許,否則表示不允許。IF對非屏蔽中斷和內(nèi)部中斷請求不起作用。該標(biāo)志可由中斷控制指令設(shè)置或清除。TF:陷阱標(biāo)志。TF為1時(shí),CPU每執(zhí)行完一條指令,便自動(dòng)產(chǎn)生一個(gè)內(nèi)部中斷,可以利用它對程序進(jìn)行逐條檢查。程序調(diào)試過程中的“單步執(zhí)行”就是利用這個(gè)標(biāo)志。第12頁,共18頁,2023年,2月20日,星期三例2.1觀察下面的運(yùn)算,寫出運(yùn)算結(jié)果的狀態(tài)標(biāo)志。

1000100088H一128

+?10001100=+?8CH=+?一116

100010100114H一244方框中的1表示溢出。運(yùn)算結(jié)果的標(biāo)志位如下:因?yàn)檫\(yùn)算結(jié)果的最高位有進(jìn)位,所以產(chǎn)生溢出,CF=1;運(yùn)算結(jié)果的低8位有偶數(shù)個(gè)1,所以,PF=1;運(yùn)算結(jié)果的低4位向高4位有進(jìn)位,所以,AF=1;運(yùn)算結(jié)果不為零,所以,ZF=0;最高位為0,所以,SF=0;因?yàn)镈7的進(jìn)位是1,D6的進(jìn)位是0,所以產(chǎn)生溢出,OF=1。第13頁,共18頁,2023年,2月20日,星期三圖2-7當(dāng)前可尋址的存儲(chǔ)器段(堆棧段和附加段重疊)第14頁,共18頁,2023年,2月20日,星期三3.8086存儲(chǔ)器的邏輯地址與物理地址物理地址,也稱實(shí)際地址。8086CPU中的每個(gè)存儲(chǔ)元在存儲(chǔ)體中的位置都可以使用物理地址和邏輯地址來表示。為編程方便,8086存儲(chǔ)器采用邏輯地址在程序中使用,它由兩部分組成:段基址和偏移量。偏移量又稱為有效地址EA,是在段基址上的附加值。假如把一條馬路從頭到尾編號(hào)0~1000,比作物理地址,邏輯地址就好比把這條馬路分成幾段,若各段的段基址分別為0、100、300、500、800,為了簡便,記作0、1、3、5、8,則物理地址的126號(hào),其對應(yīng)的邏輯地址,就是段基址1左移兩位(相當(dāng)于乘以100)再加上偏移量16;則物理地址的574號(hào),其對應(yīng)的邏輯地址,就是段基址5左移兩位(相當(dāng)于乘以100)加上偏移量74。第15頁,共18頁,2023年,2月20日,星期三4.8086存儲(chǔ)器20位物理地址的形成

在存儲(chǔ)段劃分時(shí),段內(nèi)地址是連續(xù)的,段與段之間是相互獨(dú)立的。每個(gè)段的起始地址稱段的基址,段基址必須是能被16整除的那些地址,即20位的段基址的低四位應(yīng)當(dāng)是0000。當(dāng)CPU訪問存儲(chǔ)器時(shí),根據(jù)邏輯地址(由段基址和偏移值構(gòu)成),在BIU的地址加法器中形成20位的物理地址,其方法是將段址左移四位(相當(dāng)于乘以16)再加上偏移量。第16頁,共18頁,2023年,2月20日,星期三2.2.48086的總線時(shí)序時(shí)鐘周期是時(shí)鐘脈沖的重復(fù)周期,時(shí)鐘周期又叫T狀態(tài),是CPU的時(shí)間基準(zhǔn),時(shí)序系統(tǒng)中的最小時(shí)間單位,由計(jì)算機(jī)主頻決定。指令周期是指從取指令開始,經(jīng)過分析指令、對操作數(shù)尋址,然后執(zhí)行指令,保存操作結(jié)果這個(gè)過程??偩€周期是在一個(gè)指令執(zhí)行周期中,通過總線進(jìn)行一次或多次對存儲(chǔ)單元或I/O端口讀或?qū)懙牟僮?。完成一次讀/寫操作所需要的時(shí)間,它又稱機(jī)器周期。所有指令的第一個(gè)機(jī)器周期都是“取指”周期。一個(gè)指令周期可細(xì)分為若干個(gè)總線周期,而一個(gè)總線周期又有若干個(gè)時(shí)鐘周期組成。第17頁,共18頁,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論