freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[計(jì)算機(jī)軟件及應(yīng)用]第3章inter80x86微計(jì)算機(jī)處理器-文庫(kù)吧資料

2025-02-28 00:25本頁(yè)面
  

【正文】 =21000H 即, CPU應(yīng)將內(nèi)存 21000H單元的字節(jié)送入 AL (當(dāng)前 DS寄存器內(nèi)容 2022H) 微機(jī)原理及應(yīng)用 CPU AX 地址譯碼器 00000H 00001H 00002H .. FFFFFH 21000H .. .. .. 地址鎖存器 總線收發(fā)器 T1: CPU送出地址 21000H,選中內(nèi)存單元 T2:高 4位送狀態(tài),低 16位高阻 T3: 21000H單元數(shù)據(jù)通過低 16位復(fù)用線、收發(fā)器送至 CPU,由 CPU接收;高 4位狀態(tài)不變。 以時(shí)鐘周期為單位 T1 T2 T3 T4 CLK T1 T2 T3 T4 幾個(gè)空閑周期 總線周期工作情況 2)空閑周期 微機(jī)原理及應(yīng)用 指令 MOV AX, [1000H ]執(zhí)行過程 BIU預(yù)先將指令取入,存于 指令緩沖隊(duì)列 中 ; EU在完成上一指令工作后,從指令緩沖隊(duì)列前將該指令取入,由 EU控制電路識(shí)別,執(zhí)行; , EU給出 偏移地址 1000H申請(qǐng) BIU取數(shù)據(jù); DS,通過 20加法地址器 位將 1000H和 DS配合產(chǎn)生 20位 物理地址 ; 微機(jī)原理及應(yīng)用 指令 MOV AX, [1000H]執(zhí)行過程 ,此刻開始的時(shí)鐘周期為T1,以后順次為 T2, T3, T4 T1: CPU發(fā)送 20位地址信號(hào)(由地址加法器計(jì)算得來(lái))至多路復(fù)用線; T2: CPU向高 4位復(fù)用線送狀態(tài),低 16位高阻; T3:高 4位復(fù)用線繼續(xù)傳送狀態(tài),低 16位傳送 內(nèi)存 DS: 1000H單元所存數(shù)據(jù)到 CPU引腳; T4:總線周期結(jié)束 . BIU取回的內(nèi)存 DS: 1000H單元的內(nèi)容送到 AX寄存器中,指令執(zhí)行結(jié)束。一個(gè)總線周期至少包括 4個(gè)時(shí)鐘周期 微機(jī)原理及應(yīng)用 在某些特殊情況下, T3時(shí)鐘周期內(nèi)存或 I/O接口不能完成讀寫工作,需通知 CPU, CPU將在 T3后插入一個(gè)或多個(gè)等待時(shí)鐘周期 —— Tw狀態(tài),直到內(nèi)存或 I/O接口準(zhǔn)備好。圖 (a)給出典型的總線周期波形圖。 而不是一個(gè) 字或字節(jié) 泛指數(shù)據(jù) 含指令字節(jié) 總線周期的概念 微機(jī)原理及應(yīng)用 如 8086的主頻為 5MHz, 1個(gè)時(shí)鐘周期就是 200ns。 在 8086/8088中 , 一個(gè)最基本的總線周期由四個(gè)時(shí)鐘周期組成 , 時(shí)鐘周期是 CPU的基本時(shí)間計(jì)量單位 , 它由計(jì)算機(jī)主頻決定 。 按照數(shù)據(jù)的傳送方向來(lái)分 , 總線周期可分為 “ 讀 ” 總線周期 ( CPU從存儲(chǔ)器或 I/O端口讀取數(shù)據(jù) ) 和 “ 寫 ” 總線周期 ( CPU將數(shù)據(jù)寫入存儲(chǔ)器或 I/O端口 ) 。 若用 STD將 DF置 1,串操作按減地址方式進(jìn)行 , 也就是說(shuō) , 從高地址開始 , 每操作一次地址自動(dòng)遞減;若用 CLD將 DF清 0, 則串操作按增地址方式進(jìn)行 , 即每操作一次地址自動(dòng)遞增 。 IF的狀態(tài)對(duì)非屏蔽中斷及內(nèi)部中斷沒有影響。是用來(lái)控制可屏蔽中斷的控制標(biāo)志位。 若將 TF置 1, 8086/8088CPU處于單步工作方式 , 否則 ,將正常執(zhí)行程序 。 TF(Trap Flag)——跟蹤 ( 陷阱 ) 標(biāo)志位 。用來(lái)判斷帶符號(hào)數(shù)運(yùn)算結(jié)果是否溢出。 OF(Overflow Flag)——溢出標(biāo)志位。 SF(Sign Flag)——符號(hào)標(biāo)志位 。 ZF(Zero Flag)——零標(biāo)志位 。 微機(jī)原理及應(yīng)用 AF(Auxiliary Flag)——輔助進(jìn)位標(biāo)志位 。 PF(Parity Flag)——奇偶標(biāo)志位。 當(dāng)進(jìn)行加減運(yùn)算時(shí) , 若最高位發(fā)生進(jìn)位或借位則 CF為 1, 否則為 0。不同指令對(duì)狀態(tài)標(biāo)志位的影響是不同的 。 FLAGS稱為標(biāo)志寄存器,它是一個(gè) 16位的寄存器,但只用了其中 9位,這 9位包括 6個(gè)狀態(tài)標(biāo)志位, 3個(gè)控制標(biāo)志位,如圖。 微機(jī)原理及應(yīng)用 表 8086/8088段寄存器與提供段內(nèi)移地址的 寄存器之間的默認(rèn)組合 段 寄 存 器 提供段內(nèi)偏移地址的寄存器 CS IP DS BX 、 SI 、 DI 或一個(gè) 16 位立即數(shù)形式的偏移地址 SS SP 或 BP ES DI ( 用于字符串操作指令 ) 微機(jī)原理及應(yīng)用 3. 控制寄存器 IP(Instruction Pointer)稱為指令指針寄存器 , 用來(lái)存放下一條要讀取的指令在代碼段內(nèi)的偏移地址 。 ES(Extra Segment) ,用來(lái)存放程序當(dāng)前使用的附加數(shù)據(jù)段的段地址。 SS(Stack Segment), 用來(lái)存放程序當(dāng)前所使用的堆棧段的段地址 。 微機(jī)原理及應(yīng)用 DS(Data Segment) , 用來(lái)存放程序當(dāng)前使用的數(shù)據(jù)段的段地址 。 8086/8088的四個(gè)段寄存器分別為: CS(Code Segment) ,用來(lái)存儲(chǔ)程序當(dāng)前使用的代碼段的段地址。 微機(jī)原理及應(yīng)用 2 .段寄存器 8086/8088對(duì)存儲(chǔ)器進(jìn)行分段管理 。 DI(Destination Index)稱為目的變址寄存器。作為通用寄存器,它可以用來(lái)存放數(shù)據(jù),但更經(jīng)常更重要的用途是存放操作數(shù)在堆棧段內(nèi)的偏移地址。 在使用堆棧操作指令 (PUSH或 POP)對(duì)堆棧進(jìn)行操作時(shí) , 每執(zhí)行一次進(jìn)?;虺鰲2僮?, 系統(tǒng)會(huì)自動(dòng)將 SP的內(nèi)容減 2或加 2, 以使其始終指向棧頂 。在寄存器間接尋址的 I/O指令中存放 I/O端口地址;在做雙字長(zhǎng)乘除法運(yùn)算時(shí), DX與 AX一起存放一個(gè)雙字長(zhǎng)操作數(shù),其中 DX存放高 16位數(shù)。 在設(shè)計(jì)循環(huán)程序時(shí)使用該寄存器存放循環(huán)次數(shù) , 可使程序指令簡(jiǎn)化 , 有利于提高程序的運(yùn)行速度 。 它只有一個(gè)出口 , 所以只有一個(gè)堆棧指針寄存器 SP, SP的內(nèi)容在任何時(shí)候都指向當(dāng)前的棧頂 。 為什么需要 堆棧 ?什么是堆棧? 微機(jī)原理及應(yīng)用 堆 棧(續(xù)一) 主程序 執(zhí)行子程序 繼續(xù)執(zhí)行主程序 X1 X2 2 主程序 執(zhí)行子程序2 繼續(xù)執(zhí)行主程序 X1 X2 Y1 Y2 如果在子程序中還會(huì)調(diào)用別的子程序時(shí),這不僅 需要把許多個(gè)信息保留下來(lái),而且要將保證逐次正確返回,就要求后保留的值先取出來(lái),也即數(shù)據(jù)要按照后進(jìn)先出( last in first out)的原則保留,能實(shí)現(xiàn)這樣要求的存貯區(qū)就是堆棧。 此時(shí)機(jī)器必須保留的值應(yīng)有: ( 1) 把主程序中調(diào)用子程序指令的下一條指令的地址值 ——即 PC( 8086/8088中則為碼段寄存器 CS和指令指針 IP)保留下來(lái) 。 BX用來(lái)存放操作數(shù)在內(nèi)存中數(shù)據(jù)段內(nèi)的偏移地址, BP用來(lái)存放操作數(shù)在堆棧段內(nèi)的偏移地址。 BX(Base)稱為基址寄存器。 用該寄存器存放運(yùn)算結(jié)果可使指令簡(jiǎn)化 , 提高指令的執(zhí)行速度 。 注意 :8086/8088 CPU的 14個(gè)寄存器除了這 4個(gè) 16位寄存器能分別當(dāng)作兩個(gè) 8位寄存器來(lái)用之外,其它寄存器都不能如此使用。每個(gè)數(shù)據(jù)寄存器都是 16位的,但又可將高、低 8位分別作為兩個(gè)獨(dú)立的 8位寄存器來(lái)用。 微機(jī)原理及應(yīng)用 8086/8088寄存器結(jié)構(gòu) 圖 8086/8088CPU內(nèi)部寄存器結(jié)構(gòu) AHBHCHDHALBLCLDL15 8 7 0AXBXCXDX累加器基址寄存器計(jì)數(shù)寄存器數(shù)據(jù)寄存器數(shù)據(jù)寄存器15 0SPBPSIDI15 0CSDSSSES15 0IPF L A G S堆棧指針寄存器基址寄存器源變址寄存器目的變址寄存器指針寄存器變址寄存器代碼段寄存器數(shù)據(jù)段寄存器堆棧段寄存器附加數(shù)據(jù)段寄存器段寄存器指令指針寄存器狀態(tài)標(biāo)志寄存器控制寄存器通用寄存器微機(jī)原理及應(yīng)用 1. 通用寄存器 四個(gè)數(shù)據(jù)寄存器 , 兩個(gè)指針寄存器和兩個(gè)變址寄存器 。 8086指令隊(duì)列可容納 6個(gè)字節(jié) , 且在每一個(gè)總線周期中從存儲(chǔ)器取出 2個(gè)字節(jié)的指令代碼填入指令隊(duì)列;而 8088指令隊(duì)列只能容納 4個(gè)字節(jié) , 在一個(gè)機(jī)器周期中取出一個(gè)字節(jié)的指令代碼送指令隊(duì)列 。 8086外部數(shù)據(jù)總線 16位 , 在一個(gè)總線周期內(nèi)可以輸入 /輸出一個(gè)字 ( 16位數(shù)據(jù) ) , 而 8088外部數(shù)據(jù)總線 8位 ,在一個(gè)總線周期內(nèi)只能輸入 /輸出一個(gè)字節(jié) ( 8位數(shù)據(jù) ) 。 (5) EU控制電路:它是控制 、 定時(shí)與狀態(tài)邏輯電路 , 接收從 BIU中指令隊(duì)列取來(lái)的指令 , 經(jīng)過指令譯碼形成各種定時(shí)控制信號(hào) , 對(duì) EU的各個(gè)部件實(shí)現(xiàn)特定的定時(shí)操作 。 (3) 數(shù)據(jù)暫存寄存器:協(xié)助 ALU完成運(yùn)算,暫存參加運(yùn)算的數(shù)據(jù)。 EU由下列部件組成: (1) 16位算術(shù)邏輯單元 (ALU):用于進(jìn)行算術(shù)和邏輯運(yùn)算 。 微機(jī)原理及應(yīng)用 2. 執(zhí)行單元 EU 執(zhí)行單元 EU不與系統(tǒng)外部直接相連 , 它的功能只是負(fù)責(zé)執(zhí)行指令 。當(dāng) EU執(zhí)行跳轉(zhuǎn)、子程序調(diào)用或返回指令時(shí),BIU就使指令隊(duì)列復(fù)位,并從指令給出的新地址開始取指令,新取的第 1條指令直接經(jīng)指令隊(duì)列送 EU執(zhí)行,隨后取來(lái)的指令將填入指令隊(duì)列緩沖器。 它們采用 “ 先進(jìn)先出 ” 原則 , 按順序存放 , 并按順序取到 EU中去執(zhí)行 。 例題 微機(jī)原理及應(yīng)用 例題 已知 (CS)=1055H,(DS)=250AH (ES)=2EF0H,(SS)=8FF0H 某操作數(shù)偏移地址 =0204H 設(shè)操作數(shù)在數(shù)據(jù)段,則操作數(shù)的物理地址為: 250AH 16+0204H = 252A4H 微機(jī)原理及應(yīng)用 ∑015段內(nèi)偏移地址段寄存器19 0340000 段地址左移 4 位20 位物理地址19 0圖 物理地址的形成 微機(jī)原理及應(yīng)用 4) 指令隊(duì)列緩沖器 8086的指令隊(duì)列有 6個(gè)字節(jié) , 8088的指令隊(duì)列有 4個(gè)字節(jié) 。 物理地址的形成過程如圖 。在讀指令時(shí),段地址由 CS提供,當(dāng)前要讀取指令在代碼段中的偏移地址由 IP提供;在讀取或存儲(chǔ)操作數(shù)時(shí),根據(jù)具體操作,段地址由 DS、 ES或 SS提供,段內(nèi)偏移地址由指令給出。 微機(jī)原理及應(yīng)用 存儲(chǔ)器中每個(gè)存儲(chǔ)單元的地址可有以下兩種表示方式: (1) 邏輯地址 :其表達(dá)形式為“段地址:段內(nèi)偏移地址”。 微機(jī)原理及應(yīng)用 3) 20位地址加法器 8086/8088CPU在對(duì)存儲(chǔ)單元進(jìn)行訪問以讀取指令或讀 /寫操作數(shù)時(shí) , 必須在地址總線上提供 20位的地址信息 , 以便選中對(duì)應(yīng)的存儲(chǔ)單元 。 注:不能直接用賦值指令對(duì)其內(nèi)容進(jìn)行修改。 1).段寄存器 微機(jī)原理及應(yīng)用 2) 指令指針寄存器 IP 存放下一條要讀取的指令在代碼段中的偏移地址。 ES:存放程序當(dāng)前使用的附加數(shù)據(jù)段的段地址; ES通常用于存放字符串操作時(shí)的目的字符串; DS存放源字符串; 注意:程序員在編寫匯編語(yǔ)言源程序時(shí),應(yīng)該按照上述規(guī)定將程序的各個(gè)部分放在規(guī)定的段內(nèi)。 微機(jī)原理及應(yīng)用 CS: 存儲(chǔ)程序當(dāng)前使用的指令代碼段的段地址 。 BIU取指令時(shí) , 并不影響 EU的執(zhí)行 , 兩者并行工作; ( 2) EU需要從內(nèi)存或外設(shè)端口讀取操作數(shù)時(shí),根據(jù) EU給出的地址從內(nèi)存或外設(shè)端口讀取數(shù)據(jù)供 EU使用; 8086/8088微處理器 微機(jī)原理及應(yīng)用 ( 3) EU的運(yùn)算結(jié)果、數(shù)據(jù)或控制命令等由 BIU送往指定的內(nèi)存單元或 外設(shè)端口; 段寄存器 (16位 ): CS、 DS、 SS、 ES IP(16位的指令指針寄存器 ) 地址加法器 (20位 ) 指令隊(duì)列緩沖器 (6字節(jié) ) 內(nèi)部寄存器 總線控制電路 BIU 微機(jī)原理及應(yīng)用 圖 8086CPU內(nèi)部結(jié)構(gòu)框圖 AH ALBH BLCH CLDH DL通用寄存器SPBPSIDI數(shù) 據(jù)寄存器指針和變址寄存器A L U數(shù)據(jù)總線 ( 1 6 位 )暫存寄存器EU控制電路AXBXCXDX標(biāo)志寄存器執(zhí)行單元 ( E U ) 總線接口單元 ( B I U )1 2 3 4 5 6指令隊(duì)列緩沖器(8 位 )內(nèi)部寄存器IPESSSDSCSA L U∑D B ( 1 6 位 )A B ( 2 0 位 )總
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1