版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、微機(jī)原理第章微機(jī)系統(tǒng)中的微處理器 微處理器的一般結(jié)構(gòu)微處理器的一般結(jié)構(gòu) 311 微處理器的內(nèi)部結(jié)構(gòu)微處理器的內(nèi)部結(jié)構(gòu) 的基本功能:的基本功能:()() 進(jìn)行算術(shù)和邏輯運(yùn)算進(jìn)行算術(shù)和邏輯運(yùn)算()() 具有接收存儲(chǔ)器和具有接收存儲(chǔ)器和I/O接口來的數(shù)據(jù)和發(fā)送數(shù)據(jù)給存儲(chǔ)器和接口來的數(shù)據(jù)和發(fā)送數(shù)據(jù)給存儲(chǔ)器和I/O接口接口的能力的能力()() 可以暫存少量數(shù)據(jù)可以暫存少量數(shù)據(jù)()() 能對指令進(jìn)行寄存、譯碼并執(zhí)行指令所規(guī)定的操作能對指令進(jìn)行寄存、譯碼并執(zhí)行指令所規(guī)定的操作()() 能提供整個(gè)系統(tǒng)所需的定時(shí)和控制信號(hào)能提供整個(gè)系統(tǒng)所需的定時(shí)和控制信號(hào)()() 可響應(yīng)設(shè)備發(fā)出的中斷請求??身憫?yīng)設(shè)備發(fā)出的中斷
2、請求。3.1.2 處理器的外部結(jié)構(gòu) 微處理器的外部就是輸入輸出引腳,這些引腳構(gòu)成微處理器總線??偩€按功能可以分為三種: (1)傳送信息的數(shù)據(jù)總線(Data Bus) (2)指示欲傳信息的來源或目的地址的地址總線(Address Bus) (3)管理總線上活動(dòng)的控制總線(Control Bus) 3.2 3.2 微處理器的功能結(jié)構(gòu)微處理器的功能結(jié)構(gòu) 1. 8086CPU有20條地址線,可直接尋址能力達(dá)1MB。2. 8086CPU具有16條數(shù)據(jù)總線,內(nèi)部總線和ALU均為16位,可進(jìn)行8位和16位操作,是16位微處理器。3. 8086CPU由總線接口單元BIU(Bus Interface Unit)
3、和執(zhí)行單元EU(Execution Unit)組成。 1. 4個(gè)16位段寄存器(:CS,SS,DS,ES)2. 16位指令指針I(yè)P(PC)3. 指令隊(duì)列寄存器、4. 完成與EU通訊的內(nèi)部寄存器5. 由段寄存器保存的段地址和IP或EU部件提供的偏移地址(16位)形成20位物理地址的20位物理地址加法器和總線控制邏輯。對外提供16位雙向數(shù)據(jù)和20位物理地址總線,它的任務(wù)是執(zhí)行總線周期,完成CPU與存儲(chǔ)器和I/O設(shè)備之間信息的傳送。 主要完成對外工作??偩€接口單元BIUBIU的具體工作執(zhí)行總線周期。完成CPU與存儲(chǔ)器和IO設(shè)備之間的信息傳送-從存儲(chǔ)器取指令-指令隊(duì)列-根據(jù)EU命令對存儲(chǔ)器或IO設(shè)備存
4、取數(shù)據(jù)執(zhí)行單元EU的組成1.算術(shù)邏輯運(yùn)算單元ALU2.暫存器3.標(biāo)志寄存器(PSW)4.通用寄存器組和EU控制器構(gòu)成。執(zhí)行單元EU的任務(wù)1. 執(zhí)行指令2. 進(jìn)行全部算術(shù)邏輯運(yùn)算3. 完成偏移地址的計(jì)算4. 向總線接口單元BIU提供指令執(zhí)行結(jié)果的數(shù)據(jù)和偏移地址,并對通用寄存器和標(biāo)志寄存器進(jìn)行管理。 EU的工作就是執(zhí)行指令。它專從BIU中的指令隊(duì)列中不斷的取指令并執(zhí)行指令。 當(dāng)執(zhí)行轉(zhuǎn)移指令、調(diào)用指令和返回指令時(shí),EU要等待BIU清除指令隊(duì)列,重新按照轉(zhuǎn)移目的地址取指令供EU執(zhí)行,這時(shí)BIU取出的第一條指令直接送入EU去執(zhí)行隨后取出的指令填入指令隊(duì)列。這時(shí)EU和BIU的并行操作會(huì)受到一定影響,但只要
5、發(fā)生程序轉(zhuǎn)移的概率不是很高,BIU與EU的并行工作方式仍將大大提高程序的運(yùn)行速度。 當(dāng)EU在執(zhí)行指令過程中需要訪問存儲(chǔ)器或IO端口存取操作數(shù)時(shí),EU首先向BIU發(fā)出請求,并提供操作數(shù)的有效地址,由BIU形成20位物理地址并訪問內(nèi)存或IO端口,族取操作數(shù)送給EU使用. EU和BIU間既相互配合又相對獨(dú)立,稱異步工作方式,亦即并行流水線方式,它大大提高了CPU執(zhí)行程序的速度。3.3 8086的寄存器結(jié)構(gòu)的寄存器結(jié)構(gòu) 8086CPU內(nèi)部具有14個(gè)16位寄存器。 3.3.1通用寄存器 (1)數(shù)據(jù)寄存器 數(shù)據(jù)寄存器包括AX、BX、CX、DX。可寄存操作數(shù)和操作結(jié)果。每一個(gè)由可分成高8位和低8位兩個(gè)獨(dú)立的
6、8位寄存器來使用。16位數(shù)據(jù)寄存器主要用來存放數(shù)據(jù),也可存放地址,8位寄存器(AH、AL、BH、BL、CH、CL、DH、DL)只能寄放數(shù)據(jù)。(2)地址指針和變址寄存器 SP(Stack Pointer)堆棧指針 BP(Base Pointer)基址指針 SI(Source Index)和DI(Destination Index)變址寄存器 以上寄存器主要用來存放地址,也可存放數(shù)據(jù)。 3.3.2 段寄存器組 訪問存儲(chǔ)器的地址碼有段地址和段內(nèi)偏移地址兩部分組成。段寄存器用來存放段地址??偩€接口單元BIU設(shè)置4個(gè)段寄存器,CPU可通過4個(gè)段寄存器訪問存儲(chǔ)器中4個(gè)不同的段(每段64K)。 代碼段寄存器
7、CS(Code Segment):存放當(dāng)前執(zhí)行程序所在段的段地址,CS的內(nèi)容左移4位再加上指令指針I(yè)P的內(nèi)容就是下一條要執(zhí)行的指令地址。 數(shù)據(jù)段寄存器DS(Data Segment):存放當(dāng)前數(shù)據(jù)段的段地址。 堆棧寄存器SS(Stack Segment):存放當(dāng)前堆棧段的段地址。 附加段寄存器ES(Extra Segment):附加段是一個(gè)附加數(shù)據(jù)段。 段寄存器3.3.3 控制寄存器 (1)指令指針I(yè)P(Instruction Pointer) IP相當(dāng)于程序計(jì)數(shù)器PC。保存下一條要執(zhí)行的指令的偏移地址。在用戶程序中不能使用該寄存器,但可用DEBUG來調(diào)試修改。 (2)標(biāo)志寄存器(FLAG)
8、就是處理器狀態(tài)字寄存器(PSW),一共兩個(gè)字節(jié),9個(gè)標(biāo)志。其中6個(gè)反映前一次ALU操作結(jié)果涉及的狀態(tài)標(biāo)志,3個(gè)是控制CPU操作特征的控制標(biāo)志。PF(Parity Flag)奇偶標(biāo)志,低8位中含有偶數(shù)個(gè)1,PF=1 AF(Auxiliary Carry Flag)輔助進(jìn)位標(biāo)志,加法或減法運(yùn)算時(shí),D3位有進(jìn)位或借位時(shí) AF=1,主要用于BCD運(yùn)算。 ZF(Zero Flag)零標(biāo)志,結(jié)果為0, ZF=1 CF(Carry Flag)進(jìn)位標(biāo)志 SF(Sign Flag)符號(hào)標(biāo)志,D7或D15=1,SF=1,表示負(fù)數(shù) 狀態(tài)標(biāo)志(六個(gè))OF標(biāo)志,運(yùn)算結(jié)果超出范圍,產(chǎn)生溢出,OF=1,否則OF=0;對于加
9、法運(yùn)算,如果次高位形成進(jìn)位加入最高位,而最高位相加時(shí),卻沒有進(jìn)位輸出;或次高位沒有進(jìn)位加入最高位,但最高位卻有進(jìn)位輸出,都將發(fā)生溢出,OF=1.減法同理。成為雙高原則:兩個(gè)高位都有進(jìn)位或借位,運(yùn)算不溢出,OF=0;兩個(gè)高位中只有一個(gè)有進(jìn)位或借位,運(yùn)算溢出,OF=1; OF(Overflow Flag)溢出標(biāo)志控制標(biāo)志 DF(Direction Flag)方向標(biāo)志??捎弥噶铑A(yù)置,字符串操作時(shí),DF=0,遞增;DF=1,地址遞減。 IF(Interrupt Enable Flag)中斷允許標(biāo)志。IF=1,CPU響應(yīng)可屏蔽中斷,IF=0,CPU不響應(yīng)可屏蔽中斷。 TF(Trap Flag)陷阱標(biāo)志,
10、TF=1,CPU處于單步執(zhí)行方式。 3.4 8086的存儲(chǔ)器組織的存儲(chǔ)器組織 3.4.1 存儲(chǔ)器地址空間和數(shù)據(jù)存儲(chǔ)格式 存儲(chǔ)器地址空間 8086的存儲(chǔ)器是以字節(jié)(8 bit)為單位組成的。共有20條地址總線,可尋址的存儲(chǔ)器地址空間為220Byte(1MB)。每個(gè)字節(jié)對應(yīng)一個(gè)唯一的地址,地址范圍0-220-1(000000FFFFFH)。 存儲(chǔ)器內(nèi)兩個(gè)連續(xù)的字節(jié)定義為一個(gè)字(WORD)。每個(gè)字的低字節(jié)(低8位)存放在低地址中,高字節(jié)(高8位)存放在高地址中。字的地址指向低字節(jié)的地址。數(shù)據(jù)存儲(chǔ)格式 8086CPU數(shù)據(jù)總線16位,對于訪問(讀或?qū)懀┳止?jié)的指令,需要一個(gè)總線周期,對于訪問一個(gè)偶地址的字
11、的指令,也需要一個(gè)總線周期,而對于訪問一個(gè)奇地址的字的指令,需要兩個(gè)總線周期(CPU自動(dòng)完成)。3.4.2 存儲(chǔ)器的分段和物理地址的形成 8086的地址總線20條,可尋址空間為1MB。BX、IP、SP、ALU等都是16位,只能直接處理16位地址(64KB)。8086CPU采用地址分段方法,將尋址空間擴(kuò)大到1MB。 邏輯段 8086把1MB的存儲(chǔ)器空間分成若干個(gè)邏輯段,每段最多64KB。 各邏輯段的起始地址必須是能被16整除的地址,即低4位地址為0。 一個(gè)段的起始地址的高16位被稱為該段的段地址。段內(nèi)偏移地址 在1MB的存儲(chǔ)器地址中可以有216個(gè)段地址。 每個(gè)段內(nèi)的偏移地址稱為有效地址EA,偏移
12、地址也為16位。 一個(gè)段最大可以包括64BK的空間,相鄰兩個(gè)段的段地址最小相距16個(gè)字節(jié),段與段可互相覆蓋。 每個(gè)存儲(chǔ)單元都有一個(gè)物理地址。而邏輯地址由段地址和偏移地址兩部分組成。 段地址和偏移地址都是無符號(hào)的16位二進(jìn)制數(shù)(4位16進(jìn)制)。邏輯地址的表示格式:段地址:偏移地址。 物理地址=段地址10H+偏移地址8086BIU中加法器用來完成物理地址的計(jì)算。 物理地址分段存儲(chǔ)示意圖舉例例如:某指令在代碼段中邏輯地址為:段首址CS2000H段內(nèi)偏移地址IP5F62H,則其物理地址為(CS)x16+IP200Hx16+5F62H25F62H若該指令的段基址為CS2200H,而IP3F62H其物理地
13、址仍為25F62H3.4.3寄存器的關(guān)系信息的分段存儲(chǔ)與段 程序區(qū):存儲(chǔ)程序的指令代碼; 數(shù)據(jù)區(qū):存儲(chǔ)原始數(shù)據(jù)、中間結(jié)果和最后結(jié)果; 堆棧區(qū):存儲(chǔ)需要壓入堆棧的數(shù)據(jù)或狀態(tài)信息。 代碼段寄存器CS劃定并控制程序區(qū); 數(shù)據(jù)段寄存器DS和附加段寄存器ES控制數(shù)據(jù)區(qū); 堆棧段寄存器SS對應(yīng)堆棧存儲(chǔ)區(qū)。 各種類型訪問存儲(chǔ)器時(shí)的地址成分各種類型訪問存儲(chǔ)器時(shí)的地址成分 注意點(diǎn) (1)段寄存器 訪問存儲(chǔ)器時(shí),必須要有段寄存器,段寄存器可指定,也可以是默認(rèn)的。 (2)重置段寄存器 DS、ES和SS內(nèi)容可用傳送指令通過寄存器置入,但不能向CS置數(shù)。 (3)段內(nèi)偏移地址來源 3.5 8086的的I/O組織組織 一般
14、外部設(shè)備的速度比CPU低得多,因此必須通過I/O接口與CPU連接,I/O接口是保證信息和數(shù)據(jù)在CPU與I/O設(shè)備之間正常傳送的電路。 I/O接口與CPU之間的通信是利用稱為I/O端口的寄存器來完成的。 一個(gè)I/O端口有一個(gè)唯一的I/O地址與之對應(yīng)。8086的IO端口 8086地址總線的低16位用來對8位I/O端口尋址,可尋址65536個(gè)8位I/O口。 連續(xù)的兩個(gè)8位I/O端口可作為一個(gè)16位端口。 I/O端口尋址分為直接尋址和間接尋址。 3.6 8086的尋址方式的尋址方式 機(jī)器語言的一條指令包含操作碼(OP)和操作數(shù),操作碼指明該指令進(jìn)行什么操作,操作數(shù)指出該指令在執(zhí)行規(guī)定操作時(shí)所需的信息。
15、規(guī)定操作數(shù)的方法,即指令中用于說明操作數(shù)所在地址的方法稱為尋址方式. 尋址方式可分為:數(shù)據(jù)尋址方式和轉(zhuǎn)移地址尋址方式。 3.6.1 數(shù)據(jù)尋址方式 (1)立即尋址 數(shù)據(jù)直接放在指令本身的最后一個(gè)(8位)或兩個(gè)字節(jié)(16位)。 注意: 1)立即數(shù)尋址方式只能用于源操作數(shù)。主要用于給寄存器賦值。 2)立即數(shù)尋址方式不執(zhí)行總線周期,執(zhí)行速度快。 3)立即數(shù)為16位時(shí)。低位字節(jié)存放在存儲(chǔ)器低地址單元,高位字節(jié)存放在存儲(chǔ)器高地址單元。該存儲(chǔ)器在CS段中(2)寄存器尋址 數(shù)據(jù)寄放在指令規(guī)定的寄存器中。 16位:AX,BX,CX,DX,SI,DI,SP,BP 8位:AL,AH,BL,BH,CL,CH,DL,D
16、H 注意: 1)寄存器尋址方式的指令操作在CPU內(nèi)部執(zhí)行。不需要執(zhí)行總線周期,執(zhí)行速度快。 2)寄存器尋址方式既適用于指令的源操作數(shù),也適用于目的操作數(shù),可同時(shí)用于源操作數(shù)和目的操作數(shù)。(3)直接尋址 操作數(shù)放在存儲(chǔ)單元中,段內(nèi)偏移地址(16位有效地址)在指令碼中。有效地址(EA)也稱為偏移地址,它代表操作數(shù)所在存儲(chǔ)單元距離段首址的字節(jié)數(shù)。有效地址是一個(gè)無符號(hào)的16位二進(jìn)制數(shù)。 注意: 1)直接尋址方式的操作數(shù)所在存儲(chǔ)單元的段地址一般在數(shù)據(jù)段寄存器DS中。 2)如果操作數(shù)在其他段,則需要在指令中用段超越前綴指出相應(yīng)的段寄存器名 (4)寄存器間接尋址 操作數(shù)在存儲(chǔ)單元中,其有效地址在指令碼指明的
17、基址寄存器BX或變址寄存器S I或DI之中。(BX)EA= (SI)(DI) 當(dāng)使用寄存器BX、SI、DI時(shí),操作數(shù)所在存儲(chǔ)單元的段地址存在數(shù)據(jù)段寄存器DS中。物理地址的計(jì)算方法為: 物理地址=16(DS)十(BX) (寄存器SI、DI類同)(5)寄存器相對尋址 操作數(shù)在存儲(chǔ)單元中,其有效地址是一個(gè)8位或16位的位移量(用disp表示)與一個(gè)基址寄存器或變址寄存器的內(nèi)容之和。Disp和這個(gè)寄存器在指令碼中給出。 (BX) 8位dispEA= (BP) + (SI) 16位disp (DI)計(jì)算操作數(shù)所在存儲(chǔ)單元的物理地址時(shí)與寄存器間接尋址方式相同使用寄存器BX、SI、DI時(shí)與數(shù)據(jù)段寄存器DS有
18、關(guān),使用寄存器BP時(shí)與堆棧段寄存器SS有關(guān)。以寄存器SI、8位位移量為例,物理地址為 物理地址16(DS)十(SI)十DISP8 (使用寄存器BX,DI相同)以寄存器BP、l 6位位移量為例,物理地址為 物理地址16(SS)十(BP)+DISPl6(6)基址變址尋址 當(dāng)使用基址寄存器BX時(shí),段寄存器為DS,物理地址計(jì)算方法為: 物理地址16(DS)十(BX)十(SI) (使用寄存器DI類同)當(dāng)使用基址寄存器BP時(shí),段寄存器為SS,其物理地址計(jì)算方法為: 物理地址=16(SS)十(BP)十(SI) (使用寄存器DI類同)(7)基址變址且相對尋址 當(dāng)使用基址寄存器BX時(shí),段寄存器為DS,物理地址計(jì)算方法為:物理地址=16(DS)+(BX)+ +當(dāng)使用基址寄存器BP時(shí),段寄存器為SS,物理地址計(jì)算方法為:物理地址=16(SS)+(BP)+ +)()(DISI168DISPDISP)()(DISI168DISPDISP(8)隱含尋址 指令碼中不包含指明操作數(shù)尋址的部分,而其操作碼本身隱含地指明了操作數(shù)地址。例如字符串操作指令。 例 如 : 若 ( D S ) = 4 1 0 0 H ,(BX)=237DH,(SI)=1C
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025項(xiàng)目施工合同模板
- 2025房屋建筑合同模板 房屋建筑合同
- 2025專業(yè)版電子版權(quán)委托代理合同
- 二零二五年度XX房地產(chǎn)公司收取管理費(fèi)合作協(xié)議3篇
- 二零二五年度股權(quán)代持與公司研發(fā)創(chuàng)新合作協(xié)議3篇
- 2025年度農(nóng)機(jī)設(shè)備委托管理與農(nóng)業(yè)人才培養(yǎng)協(xié)議3篇
- 二零二五年度特色農(nóng)產(chǎn)品電商平臺(tái)合作合同范本3篇
- 2025年度養(yǎng)老院老人外出看護(hù)責(zé)任約定協(xié)議3篇
- 2025年度全新二零二五年度離婚后子女心理輔導(dǎo)及關(guān)愛協(xié)議3篇
- 二零二五年度養(yǎng)殖場品牌授權(quán)與合作承包協(xié)議3篇
- 2022一、二級(jí)個(gè)人防護(hù)(穿脫防護(hù)服)操作評(píng)分表(精華版)
- 膀胱癌診療指南課件
- 大班唱歌《吹泡泡》課件
- 護(hù)理人文關(guān)懷示范病房創(chuàng)建及成效14-44-16
- DB37∕T 5112-2018 村莊道路建設(shè)規(guī)范
- 牽引供電系統(tǒng)遠(yuǎn)動(dòng)技術(shù)概述講解課件
- 義務(wù)教育《道德與法治》課程標(biāo)準(zhǔn)(2022年版)
- 乙肝五項(xiàng)詳解(課堂PPT)
- TD汽車維修公司管理制度和崗位職責(zé)匯編-30頁
- 數(shù)字化設(shè)計(jì)與制造PPT課件
- 個(gè)人信息查詢使用授權(quán)書
評(píng)論
0/150
提交評(píng)論