




已閱讀5頁(yè),還剩98頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第二章Intel系列微處理器結(jié)構(gòu)一 微型計(jì)算機(jī)組成原理二 微處理器內(nèi)部結(jié)構(gòu) 一 微型計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理主要討論計(jì)算機(jī)各組成部件的基本概念 基本結(jié)構(gòu)及工作原理 通過研究各部件的原理及相互聯(lián)系與作用建立完整的整機(jī)概念 CPU 適當(dāng)容量M 輸入輸出接口 外部設(shè)備 MICOR COMPUTER 軟件 MICOR COMPUTERSYSTEM1 微型計(jì)算機(jī)外部結(jié)構(gòu)2 微型計(jì)算機(jī)內(nèi)部結(jié)構(gòu) 3 體系結(jié)構(gòu) 馮 諾依曼計(jì)算機(jī)體系結(jié)構(gòu) 基本原理 軟件是指程序和數(shù)據(jù)一起存入存儲(chǔ)器 由機(jī)器自動(dòng)地執(zhí)行程序中的一條條指令 硬件是按照計(jì)算機(jī)規(guī)范要求所構(gòu)成的一個(gè)用以實(shí)現(xiàn)計(jì)算機(jī)軟件編程意圖的工具 1 微型計(jì)算機(jī)外部結(jié)構(gòu)微型計(jì)算機(jī)外部結(jié)構(gòu)如下圖所示 三總線結(jié)構(gòu) 微型計(jì)算機(jī)外部結(jié)構(gòu) 5 微型計(jì)算機(jī)的系統(tǒng)結(jié)構(gòu)框圖 6 CPU是微型計(jì)算機(jī)的核心芯片 它包括運(yùn)算器 控制器和寄存器三個(gè)主要部分 運(yùn)算器也稱為算術(shù)邏輯單元ALU ArithmeticandLogicUnit 顧名思義 運(yùn)算器的功能是完成數(shù)據(jù)的算術(shù)和邏輯運(yùn)算的 控制器一般由指令寄存器 指令譯碼器和控制電路組成 控制器根據(jù)指令的要求 對(duì)微型計(jì)算機(jī)各部件發(fā)出相應(yīng)的控制信息 使它們協(xié)調(diào)工作 從而完成對(duì)整個(gè)計(jì)算機(jī)系統(tǒng)的控制 CPU內(nèi)部的寄存器用來存放經(jīng)常使用的數(shù)據(jù) 1 CPU 7 根據(jù)馮 諾依曼計(jì)算機(jī)體系結(jié)構(gòu)準(zhǔn)則 數(shù)據(jù)信息和控制信息按存儲(chǔ)地址存放在存儲(chǔ)器中 計(jì)算機(jī)由一個(gè)程序計(jì)算器控制指令的執(zhí)行 計(jì)算機(jī)分為運(yùn)算器 控制器 系統(tǒng)總線 存儲(chǔ)器 輸入輸出接口等五大部件 隨著大規(guī)模集成電路的出現(xiàn) 運(yùn)算器和控制器集成在了一個(gè)芯片上 而這種具有運(yùn)算器和控制器功能的計(jì)算機(jī)部件稱為中央處理器 通常簡(jiǎn)稱CPU CPU的功能與組成 1 CPU的功能當(dāng)用計(jì)算機(jī)解決某個(gè)問題時(shí) 我們首先必須為它編寫程序 程序是一個(gè)指令序列 這個(gè)序列明確告訴計(jì)算機(jī)應(yīng)該執(zhí)行什么操作 在什么地方找到用來操作的數(shù)據(jù) 一旦把程序裝入內(nèi)存儲(chǔ)器 就可以由計(jì)算機(jī)來自動(dòng)完成取出指令和執(zhí)行指令的任務(wù) CPU對(duì)整個(gè)計(jì)算機(jī)系統(tǒng)的運(yùn)行是極其重要的 它具有如下四方面的基本功能 8 指令控制程序的順序控制稱為指令控制 由于程序是一個(gè)指令序列 這些指令的相互順序不能任意顛倒 必須嚴(yán)格按程序規(guī)定的順序進(jìn)行 操作控制一條指令的功能往往是由若干個(gè)操作信號(hào)的組合來實(shí)現(xiàn)的 因此 CPU管理并產(chǎn)生由內(nèi)存取出的每條指令的操作信號(hào) 把各種操作信號(hào)送往相應(yīng)的部件 從而控制這些部件按指令的要求進(jìn)行動(dòng)作 時(shí)間控制對(duì)各種操作實(shí)施時(shí)間上的定時(shí)稱為時(shí)間控制 在計(jì)算機(jī)中 各種指令的操作信號(hào)以及一條指令的整個(gè)執(zhí)行過程都受到時(shí)間的嚴(yán)格定時(shí) 數(shù)據(jù)加工數(shù)據(jù)加工就是對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算處理 9 2 CPU的基本組成總線接口與控制單元 執(zhí)行運(yùn)算單元是CPU的基本部件 10 存儲(chǔ)器 Memory 又稱為主存 MainStorage 或內(nèi)存 是微型計(jì)算機(jī)的存儲(chǔ)和記憶裝置 用以存放數(shù)據(jù)和程序 微型計(jì)算機(jī)的內(nèi)存通常采用半導(dǎo)體存儲(chǔ)器 內(nèi)存單元的地址和內(nèi)容 內(nèi)存中存放的是數(shù)據(jù)和程序 從形式上看 均為二進(jìn)制數(shù) 一般將8位二進(jìn)制數(shù)記作一個(gè)字節(jié) Byte 每一個(gè)內(nèi)存單元中存放一個(gè)字節(jié)的二進(jìn)制信息 內(nèi)存容量就是它所能包含的內(nèi)存單元的數(shù)量 通常以字節(jié)為單位 1024字節(jié)記做1KB 1000KB字節(jié)記做1MB 2 存儲(chǔ)器 11 采用296引腳的引腳柵格陣列 PGA 陶瓷封裝技術(shù) 12 Pentium微處理器的功能結(jié)構(gòu) 13 微型計(jì)算機(jī)通過給各個(gè)內(nèi)存單元規(guī)定不同地址來管理內(nèi)存 這樣 CPU便能識(shí)別不同的內(nèi)存單元 正確地對(duì)其進(jìn)行操作 顯然 內(nèi)存單元的地址和內(nèi)存單元的內(nèi)容是兩個(gè)完全不同的概念 內(nèi)存的操作 CPU對(duì)內(nèi)存的操作有兩種 讀或?qū)?讀操作是CPU將內(nèi)存單元的內(nèi)容讀入CPU內(nèi)部 而寫操作是CPU將其內(nèi)部信息傳送到內(nèi)存單元保存起來 顯然 寫操作的結(jié)果改變了被寫內(nèi)存單元的內(nèi)容 是破壞性的 而讀操作是非破壞性的 即 該內(nèi)存單元的內(nèi)容在信息被讀 走 之后仍保持原信息 14 內(nèi)存的分類 按工作方式 內(nèi)存可分為兩大類 隨機(jī)存儲(chǔ)器RAM RandomAccessMemory 和只讀存儲(chǔ)器ROM ReadOnlyMemory RAM可以被CPU隨機(jī)地讀寫 故又稱為讀寫存儲(chǔ)器 這種存儲(chǔ)器用于存放用戶裝入的程序 數(shù)據(jù)及部分系統(tǒng)信息 當(dāng)機(jī)器斷電后 所存信息消失 ROM中的信息只能被CPU讀取 而不能由CPU任意寫入 故稱為只讀存儲(chǔ)器 機(jī)器斷電 信息仍保留 這種存儲(chǔ)器用于存放固定的程序 如 基本的I O程序 BASIC解釋程序以及用戶編寫的專用程序等 ROM中的內(nèi)容只能用專用設(shè)備寫入 15 I O設(shè)備是微型計(jì)算機(jī)系統(tǒng)的重要組成部分 程序 數(shù)據(jù)及現(xiàn)場(chǎng)信息要通過輸入設(shè)備輸入給微型計(jì)算機(jī) CPU計(jì)算的結(jié)果通過輸出設(shè)備輸出到外部 常用的輸入設(shè)備有鍵盤 鼠標(biāo)器 數(shù)字化儀 掃描儀 A D轉(zhuǎn)換器等 常用的輸出設(shè)備有顯示器 打印機(jī) 繪圖儀等 磁盤 磁帶 U盤既是輸入設(shè)備 又是輸出設(shè)備 3 輸入 輸出 I O 設(shè)備和輸入 輸出接口 I OInterface 16 外設(shè)的種類繁多 有機(jī)械式 電動(dòng)式 電子式等 且一般說來 與CPU相比 工作速度較低 外設(shè)處理的信息有數(shù)字量 模擬量 開關(guān)量等 而微型計(jì)算機(jī)只能處理數(shù)字量 另外 外設(shè)與微型計(jì)算機(jī)工作的邏輯時(shí)序也可能不一致 鑒于上述原因 微型計(jì)算機(jī)與外設(shè)間的連接及信息的交換不能直接進(jìn)行 而須設(shè)計(jì)一個(gè) 接口電路 作為微型計(jì)算機(jī)與外設(shè)之間的橋梁 這種接口電路又叫做 I O適配器 I OAdapter 地址總線AB ADDRESSBUS 通常16位 單向 A15 A0 可尋址216 64KB內(nèi)存單元 A7 A0 可尋址28 256外設(shè)接口 數(shù)據(jù)總線DB DATABUS 通常8位 D7 D0 雙向 實(shí)現(xiàn)CPU與I O傳送 控制總線CB CONTROLBUS 傳送控制信號(hào) 一方面根據(jù)CPU對(duì)指令的譯碼結(jié)果 輸出控制信號(hào) 另一方面CPU響應(yīng)外部器件的請(qǐng)求信號(hào) 4 總線控制 2 微型計(jì)算機(jī)內(nèi)部結(jié)構(gòu)由于CPU受成品率 成本 集成在單片上等原因 嚴(yán)格規(guī)定40條引腳 引腳數(shù)就限制了總線的數(shù)量 外部 采用三總線結(jié)構(gòu)AB DB CB 內(nèi)部 采用單總線 即內(nèi)部所有單元電路都掛在內(nèi)部總線上 分時(shí)使用總線 通常微處理機(jī)內(nèi)部結(jié)構(gòu)及外部連接方法如下圖所示 19 8086CPU內(nèi)部結(jié)構(gòu)框圖 微型計(jì)算機(jī)內(nèi)部結(jié)構(gòu) 微處理器內(nèi)部主要部件包括 1 內(nèi)部寄存器陳列用來寄存或暫存參與運(yùn)算的數(shù)據(jù) 8位或16位 經(jīng)??梢赃B成寄存器對(duì) 16位 用來存放操作數(shù)地址 16位專用寄存器如 程序計(jì)數(shù)器PC 堆棧指針SP 2 累加器和算術(shù)邏輯單元對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算 邏輯運(yùn)算的場(chǎng)所 運(yùn)算結(jié)果 標(biāo)志觸發(fā)器記憶或送某個(gè)寄存器等等 3 指令寄存器 指令譯碼器 定時(shí)及各種控制信號(hào)產(chǎn)生電路把用戶程序中的指令一條條譯出來 然后以一定時(shí)序發(fā)出相應(yīng)的控制信號(hào) 4 內(nèi)部采用單總線結(jié)構(gòu)在任何時(shí)候只有一個(gè)內(nèi)部設(shè)備能使用內(nèi)部總線 各設(shè)備之間必須分時(shí)使用內(nèi)部總線 因而速度受到影響 23 從大的結(jié)構(gòu)和功能上講 i8086可分為兩個(gè)部分 即總線接口控制單元BICU BusInterface ControlUnit 和執(zhí)行運(yùn)算單元EU ExEUtionUnit BICU 24 一 總線接口控制單元BICU總線接口控制單元BICU的功能是負(fù)責(zé)完成CPU與存儲(chǔ)器或I O設(shè)備之間的數(shù)據(jù)傳送 其具體任務(wù)是 BICU要從內(nèi)存取指令送到指令隊(duì)列緩沖器 CPU執(zhí)行指令時(shí) 總線接口控制單元要配合執(zhí)行運(yùn)算單元從指定的內(nèi)存單元或者外設(shè)端口中取數(shù)據(jù) 將數(shù)據(jù)傳送給執(zhí)行運(yùn)算單元 或者把執(zhí)行運(yùn)算單元的操作結(jié)果傳送到指定的內(nèi)存單元或外設(shè)端口中 BICU內(nèi)有4個(gè)16位段地址寄存器 包括 CS 代碼段寄存器 DS 數(shù)據(jù)段寄存器 SS 堆棧段寄存器 和ES 附加段寄存器 16位指令指針I(yè)P 6字節(jié)指令隊(duì)列緩沖器 20位地址加法器和總線控制電路 25 BICU由程序計(jì)數(shù)器 指令寄存器 指令譯碼器 時(shí)序產(chǎn)生器和操作控制器組成 它是發(fā)布命令的 決策機(jī)構(gòu) 即完成協(xié)調(diào)和指揮整個(gè)計(jì)算機(jī)系統(tǒng)的操作 它的主要功能有 1 從內(nèi)存中取出一條指令 并指出下一條指令在內(nèi)存中的位置 2 對(duì)指令進(jìn)行譯碼或測(cè)試 并產(chǎn)生相應(yīng)的操作控制信號(hào) 以便啟動(dòng)規(guī)定的動(dòng)作 3 指揮并控制CPU 內(nèi)存和輸入 輸出設(shè)備之間數(shù)據(jù)流動(dòng)的方向 26 1 程序計(jì)數(shù)器 PC 為了保證程序能夠連續(xù)地執(zhí)行下去 CPU必須具有某些手段來確定下一條指令的地址 而程序計(jì)數(shù)器正是起到這種作用 所以通常又稱為指令計(jì)數(shù)器 在程序開始執(zhí)行前 必須將它的起始地址 即程序的一條指令所在的內(nèi)存單元地址送入PC 因此PC的內(nèi)容即是從內(nèi)存提取的第一條指令的地址 當(dāng)執(zhí)行指令時(shí) CPU將自動(dòng)修改PC的內(nèi)容 以便使其保持的總是將要執(zhí)行的下一條指令的地址 由于大多數(shù)指令都是按順序來執(zhí)行的 所以修改的過程通常只是簡(jiǎn)單的對(duì)PC加1 27 但是 當(dāng)遇到轉(zhuǎn)移指令如JMP指令時(shí) 那么后繼指令的地址 即PC的內(nèi)容 必須從指令的地址段取得 在這種情況下 下一條從內(nèi)存取出的指令將由轉(zhuǎn)移指令來規(guī)定 而不是像通常一樣按順序來取得 因此程序計(jì)數(shù)器的結(jié)構(gòu)應(yīng)當(dāng)是具有寄存信息和計(jì)數(shù)兩種功能的結(jié)構(gòu) 2 數(shù)據(jù)緩沖寄存器 DR 數(shù)據(jù)緩沖寄存器用來暫時(shí)存放由內(nèi)存儲(chǔ)器讀出的一條指令或一個(gè)數(shù)據(jù)字 反之 當(dāng)向內(nèi)存存入一條指令或一個(gè)數(shù)據(jù)字時(shí) 也暫時(shí)將它們存放在數(shù)據(jù)緩沖寄存器中 緩沖寄存器的作用是 1 作為CPU和內(nèi)存 外部設(shè)備之間信息傳送的中轉(zhuǎn)站 2 補(bǔ)償CPU和內(nèi)存 外圍設(shè)備之間在操作速度上的差別 3 在單累加器結(jié)構(gòu)的運(yùn)算器中 數(shù)據(jù)緩沖寄存器還可兼作為操作數(shù)寄存器 28 3 指令寄存器 IR 指令寄存器用來保存當(dāng)前正在執(zhí)行的一條指令字代碼 當(dāng)執(zhí)行一條指令時(shí) 先把它從內(nèi)存取到緩沖寄存器中 然后再傳送至指令寄存器 4 指令譯碼器 ID 指令分為操作碼和地址碼字段 由二進(jìn)制數(shù)字組成 為了能執(zhí)行任何給定的指令 必須對(duì)操作碼進(jìn)行分析 以便識(shí)別所要求的操作 指令譯碼器就是對(duì)指令寄存器中的操作碼字段進(jìn)行分析 識(shí)別該指令規(guī)定的操作 向操作控制器發(fā)出具體操作的特定信號(hào) 29 5 地址寄存器 AR 地址寄存器用來保存當(dāng)前CPU所訪問的內(nèi)存單元的地址 由于在內(nèi)存和CPU之間存在著操作速度上的差別 所以必須使用地址寄存器來保持地址信息 直到內(nèi)存的讀 寫操作完成為止 當(dāng)CPU和內(nèi)存進(jìn)行信息交換 即CPU向內(nèi)存存 取數(shù)據(jù)時(shí) 或者CPU從內(nèi)存中讀出指令時(shí) 都要使用地址寄存器和數(shù)據(jù)緩沖寄存器 同樣 如果把外圍設(shè)備的設(shè)備地址作為像內(nèi)存的地址單元那樣來看待 那么 當(dāng)CPU和外圍設(shè)備交換信息時(shí) 同樣可使用地址寄存器和數(shù)據(jù)緩沖寄存器 地址寄存器的結(jié)構(gòu)和數(shù)據(jù)緩沖寄存器 指令寄存器一樣 通常使用單純的寄存器結(jié)構(gòu) 信息的存入一般采用電位 脈沖方式 即電位輸入端對(duì)應(yīng)數(shù)據(jù)信息位 脈沖輸入端對(duì)應(yīng)控制信號(hào) 在控制信號(hào)作用下 瞬時(shí)地將信息打入寄存器 30 對(duì)總線接口控制單元 這里作以下3點(diǎn)說明 1 指令隊(duì)列緩沖器 8086的指令隊(duì)列為6個(gè)字節(jié) 而8088的指令隊(duì)列為4個(gè)字節(jié) 不管是8086還是8088 都會(huì)在執(zhí)行指令的同時(shí) 從內(nèi)存中取下面1條或幾條指令 取來的指令就依次放在指令隊(duì)列中 它們采用 先進(jìn)先出 的原則 按順序存放 并按順序取到EU中去執(zhí)行 其操作將遵循下列原則 31 1 取指時(shí) 每當(dāng)指令隊(duì)列緩沖器中存滿1條指令后 EU就立即開始執(zhí)行 2 指令隊(duì)列緩沖器中只要空出2個(gè) 對(duì)8086 或空出1個(gè) 對(duì)8088 指令字節(jié)時(shí) BICU便自動(dòng)執(zhí)行取指操作 直到填滿為止 3 在EU執(zhí)行指令的過程中 指令需要對(duì)存儲(chǔ)器或I O設(shè)備存取數(shù)據(jù)時(shí) BICU將在執(zhí)行完現(xiàn)行取指的存儲(chǔ)器周期后的下一個(gè)存儲(chǔ)器周期 對(duì)指定的內(nèi)存單元或I O設(shè)備進(jìn)行存取操作 交換的數(shù)據(jù)經(jīng)BICU由EU進(jìn)行處理 32 4 當(dāng)EU執(zhí)行完轉(zhuǎn)移 調(diào)用和返回指令時(shí) 則要清除指令隊(duì)列緩沖器 并要求BICU從新的地址重新開始取指令 新取的第1條指令將直接經(jīng)指令隊(duì)列送到EU去執(zhí)行 隨后取來的指令將填人指令隊(duì)列緩沖器 由于BICU與EU是分開并獨(dú)立工作的 因此 在一般情況下 CPU執(zhí)行完1條指令后就可以立即執(zhí)行下1條指令 而不需要像以往8位CPU那樣重復(fù)地進(jìn)行先取指令和后執(zhí)行指令的串行操作 16位CPU這種并行重疊操作的特點(diǎn) 提高了總線的信息傳輸效率和整個(gè)系統(tǒng)的執(zhí)行速度 33 2 地址加法器和段寄存器 前面已經(jīng)指出 8086有20根地址線 但內(nèi)部寄存器只有16位 那么如何用16位寄存器實(shí)現(xiàn)20位地址的尋址呢 這里設(shè)計(jì)師用16位的段寄存器與16位的偏移量巧妙地解決了這一矛盾 即各個(gè)段寄存器分別用來存放各段的起始地址 當(dāng)由IP提供或由EU按尋址方式計(jì)算出尋址單元的16位偏移地址 又稱為邏輯地址 后 將與左移4位后的段寄存器的內(nèi)容同時(shí)送到地址加法器進(jìn)行相加 形成一個(gè)20位的實(shí)際地址 又稱為物理地址 以對(duì)存儲(chǔ)單元尋址 34 3 16位指令指針I(yè)P InstructionPointer 其功能與8位CPU中的PC類似 正常運(yùn)行時(shí) IP中含有BICU要取的下l條指令 字節(jié) 的偏移地址 IP在程序運(yùn)行中能根據(jù)當(dāng)前指令的字節(jié)數(shù)自動(dòng)修正 使之指向要執(zhí)行的下1條指令 字節(jié) 有些指令能使IP值改變或使IP值壓進(jìn)堆棧 或由堆棧彈出恢復(fù)原值 35 二 執(zhí)行運(yùn)算單元EU執(zhí)行運(yùn)算單元不與系統(tǒng)直接相連 它的功能只是負(fù)責(zé)執(zhí)行指令 執(zhí)行的指令從BICU的指令隊(duì)列緩沖器中取得 執(zhí)行指令的結(jié)果或執(zhí)行指令所需要的數(shù)據(jù) 都由EU向BICU發(fā)出請(qǐng)求 再由BICU對(duì)存儲(chǔ)器或外設(shè)存取 EU由算術(shù)邏輯單元 ALU 累加寄存器 數(shù)據(jù)緩沖寄存器和狀態(tài)條件寄存器組成 它是數(shù)據(jù)加工處理部件 相對(duì)接口控制器而言 運(yùn)算器接受控制器的命令而進(jìn)行動(dòng)作 即運(yùn)算器所進(jìn)行的全部操作都是由控制器發(fā)出的控制信號(hào)來指揮的 所以它是執(zhí)行部件 運(yùn)算器有兩個(gè)主要功能 1 執(zhí)行所有的算術(shù)運(yùn)算 2 執(zhí)行所有的邏輯運(yùn)算 并進(jìn)行邏輯測(cè)試 如零值測(cè)試或兩個(gè)值的比較 36 EU單元的主要部件 1 16位算術(shù)邏輯單元 ALU 它可以用于進(jìn)行算術(shù) 邏輯運(yùn)算 也可以按指令的尋址方式計(jì)算出尋址單元的16位偏移量 2 16位標(biāo)志寄存器F 它用來反映CPU運(yùn)算的狀態(tài)特征或存放控制標(biāo)志 狀態(tài)標(biāo)志寄存器保存由算術(shù)指令和邏輯指令運(yùn)行或測(cè)試的結(jié)果建立的各種條件碼內(nèi)容 如運(yùn)算結(jié)果進(jìn)位標(biāo)志 C 運(yùn)算結(jié)果溢出標(biāo)志 V 運(yùn)算結(jié)果為零標(biāo)志 Z 運(yùn)算結(jié)果為負(fù)標(biāo)志 N 等等 這些標(biāo)志位通常分別由1位觸發(fā)器保存 除此之外 狀態(tài)條件寄存器還保存中斷和系統(tǒng)工作狀態(tài)等信息 以便使CPU和系統(tǒng)能及時(shí)了解機(jī)器運(yùn)行狀態(tài)和程序運(yùn)行狀態(tài) 因此 狀態(tài)條件寄存器是一個(gè)由各種狀態(tài)條件標(biāo)志拼湊而成的寄存器 37 3 數(shù)據(jù)暫存寄存器 它協(xié)助ALU完成運(yùn)算 暫存參加運(yùn)算的數(shù)據(jù) 數(shù)據(jù)緩沖寄存器用來暫時(shí)存放由主存儲(chǔ)器 I O設(shè)備讀出的數(shù)據(jù)或者準(zhǔn)備寫入主存儲(chǔ)器 I O設(shè)備的數(shù)據(jù) 緩沖寄存器的作用是 1 作為CPU和內(nèi)存 外部設(shè)備之間信息傳送的中轉(zhuǎn)站 2 補(bǔ)償CPU和內(nèi)存 外圍設(shè)備之間在操作速度上的差別 3 在單累加器結(jié)構(gòu)的運(yùn)算器中 數(shù)據(jù)緩沖寄存器還可兼作為操作數(shù)寄存器 4 通用寄存器組 它包括4個(gè)16位數(shù)據(jù)寄存器AX BX CX DX和4個(gè)16位指針與變址寄存器SP BP與SI DI 5 EU控制電路 它是控制 定時(shí)與狀態(tài)邏輯電路 接收從BICU中指令隊(duì)列取來的指令 經(jīng)過指令譯碼形成各種定時(shí)控制信號(hào) 對(duì)EU的各個(gè)部件實(shí)現(xiàn)特定的定時(shí)操作 EU中所有的寄存器和數(shù)據(jù)通道 除隊(duì)列總線為8位外 都是16位的寬度 可實(shí)現(xiàn)數(shù)據(jù)的快速傳送 38 8088CPU內(nèi)部結(jié)構(gòu)與8086的基本相似 只是8088BICU中指令隊(duì)列長(zhǎng)度為4個(gè)字節(jié) 8088BICU通過總線控制電路與外部交換數(shù)據(jù)的總線寬度是8位 總線控制電路與專用寄存器組之間的數(shù)據(jù)總線寬度也是8位 二 INTEL8088結(jié)構(gòu)INTEL8086 16位機(jī) INTEL8088 簡(jiǎn)稱8088 是一種準(zhǔn)16位微處理器 在INTEL8080與8085的基礎(chǔ)上發(fā)展起來的 結(jié)構(gòu)特點(diǎn) 1 內(nèi)部結(jié)構(gòu)是16位的 內(nèi)部寄存器 內(nèi)部運(yùn)算部件 內(nèi)部操作按16位設(shè)計(jì) 2 外部數(shù)據(jù)總線8條 能處理16位數(shù)據(jù) 也能處理8位數(shù)據(jù) 具有16位運(yùn)算指令 包括 指令 3 匯編語言與8080 8085兼容 即能執(zhí)行整套8080 8085的指令 增加了許多16位操作指令 4 20條地址總線 直接尋址能力1M字節(jié) 5 40條引線封裝 6 單相時(shí)鐘 7 電源為5V 8086與8088的主要區(qū)別在于8086的外部數(shù)據(jù)總線16位 分三部分討論 一 8088的寄存器結(jié)構(gòu) 二 8088編程結(jié)構(gòu) 三 存儲(chǔ)器結(jié)構(gòu) 一 8088的寄存器結(jié)構(gòu) 8088的寄存器結(jié)構(gòu) 1 通用寄存器通用寄存器包括 數(shù)據(jù)寄存器 地址指針寄存器 變址寄存器 數(shù)據(jù)寄存器包括 AX BX CX DX 地址指針寄存器包括 SP BP 變址寄存器包括 SI DI 2 段寄存器段寄存器包括 CS SS DS ES 3 控制寄存器控制寄存器包括 IP PSW 1 通用寄存器 1 數(shù)據(jù)寄存器AX BX CX DX作為通用寄存器 用來暫存計(jì)算過程中所用到的操作數(shù) 結(jié)果或其它信息 訪問形式 可以用16位的訪問 或者可以用字節(jié) 8位 形式訪問 它們的高8位記作 AH BH CH DH 它們的低8位記作 AL BL CL DL AX Accumulator 作為累加器 它是算術(shù)運(yùn)算的主要寄存器 所有I O指令都使用這一寄存器與外部設(shè)備交換數(shù)據(jù) 例 INAL 20HOUT30H AXBX Base用作基址寄存器使用 在計(jì)算內(nèi)存儲(chǔ)器地址時(shí) 經(jīng)常用來存放基址 例 MOVAX BX 03H CX Count可以作計(jì)數(shù)寄存器使用 在循環(huán)LOOP指令和串處理指令中用作隱含計(jì)數(shù)器 例 MOVCX 200HAGAIN LOOPAGAIN CX 1 CX 結(jié)果 0轉(zhuǎn)AGAINDX Data可以作為數(shù)據(jù)寄存器使用 一般在雙字長(zhǎng)乘除法運(yùn)算時(shí) 把DX和AX組合在一起存放一個(gè)雙字長(zhǎng) 32位 數(shù) DX用來存放高16位 對(duì)某些I O操作DX可用來存放I O的端口地址 口地址 256 例 MULBX AX BX DX AX 例 INAL DX 2 地址指針與變址寄存器 段起始地址SP BP SI DI四個(gè)16位寄存器 以字為單位在運(yùn)算過程中存放操作數(shù) 經(jīng)常用以在段內(nèi)尋址時(shí)提供偏移地址 段內(nèi)偏移地址段地址 只取段起始地址高16位值 偏移地址 指在段內(nèi)某內(nèi)存單元物理地址相對(duì)段起始地址的偏移值 高16位值0000B 48 地址指針寄存器 SP BP SP stackpointer 堆棧指針寄存器用來指示棧頂?shù)钠频刂?必須與SS段寄存器聯(lián)合使用確定實(shí)際地址 堆棧和指針如下頁(yè)圖所示 BP basepointer 基址指針寄存器可以與SS寄存器聯(lián)合使用來確定堆棧段中某一存儲(chǔ)器單元地址 8088系統(tǒng)存儲(chǔ)器與總線連接 堆棧和指針 設(shè) SS 3F00H SP 0060H堆棧和指針如下圖 堆棧是內(nèi)存開辟的一個(gè)特殊數(shù)據(jù)區(qū) 一端固定 一端浮動(dòng) 嚴(yán)格按照后進(jìn)先出的工作原則 變址寄存器 SI DI SI SourceIndexRegister源變址寄存器 DI DestinationIndex目的變址寄存器 使用場(chǎng)合 常用于變址尋址 一般與DS聯(lián)用 用來確定數(shù)據(jù)段中某一存儲(chǔ)單元的地址 SI DI具有自動(dòng)增量和自動(dòng)減量功能 例 MOVAX SI 在串處理指令中 SI DI作為隱含的源變址和目的變址寄存器分別達(dá)到在數(shù)據(jù)段和附加段中尋址的目的 執(zhí)行示意圖如右圖 例 MOVSI 2000HMOVDI 3000HMOVCX 100HCLD MOVSB 串處理指令執(zhí)行示意圖 2 段寄存器段寄存器 4個(gè)16位段寄存器CS DS SS ES 用來識(shí)別當(dāng)前可尋址的四個(gè)段 不可互換的使用 CS CodeSegmentRegister代碼段寄存器用來識(shí)別當(dāng)前代碼段 程序一般放在代碼段 DS DataSegmentRegister數(shù)據(jù)段寄存器用來識(shí)別當(dāng)前數(shù)據(jù)段寄存器 SS StackSegmentRegister堆棧段寄存器 用來識(shí)別當(dāng)前堆棧段 ES ExtraSegmentRegister附加段寄存器 用來識(shí)別當(dāng)前附加段 3 控制寄存器控制寄存器 IP PSWIP InstructionPointer指令指針寄存器用來存儲(chǔ)代碼段中的偏移地址 程序運(yùn)行過程中IP始終指向下一次要取出的指令偏移地址 IP要與CS寄存器相配合才能形成真正的物理地址 PSW ProcessorStatesWordProgram 程序狀態(tài)字寄存器 16位寄存器 由條件碼標(biāo)志FLAG 控制標(biāo)志構(gòu)成 只用了其中9位 6位條件碼標(biāo)志 3位控制標(biāo)志 如下表示 條件碼標(biāo)志 用來記錄程序中運(yùn)行結(jié)果的狀態(tài)信息作為后續(xù)條件轉(zhuǎn)移指令的轉(zhuǎn)移控制條件 稱為條件碼 條件碼包括6位 CF PF AF ZF SF OF OF OverflowFlag 溢出標(biāo)志 一般指補(bǔ)碼溢出 OF 1 在運(yùn)算過程中 如操作數(shù)超過了機(jī)器表示的范圍稱為溢出 OF 0 在運(yùn)算過程中 如操作數(shù)未超過了機(jī)器能表示的范圍稱為不溢出 字節(jié)允許范圍 128 127 字運(yùn)算范圍 32768 32767 SF SignFlag 符號(hào)標(biāo)志SF 1 記錄運(yùn)算結(jié)果的符號(hào)為負(fù) SF 0 記錄運(yùn)算結(jié)果的符號(hào)為正 ZF ZeroFlag 零標(biāo)志ZF 1 運(yùn)算結(jié)果為0 ZF 0 運(yùn)算結(jié)果不為0 CF CarryFlag 進(jìn)位標(biāo)志CF 1 記錄運(yùn)算時(shí)從最高有效位產(chǎn)生進(jìn)位值 CF 0 記錄運(yùn)算時(shí)從最高有效位不產(chǎn)生進(jìn)值 AF AuxiliaryCarryFlag 輔助進(jìn)位標(biāo)志AF 1 記錄運(yùn)算時(shí)第3位 半個(gè)字節(jié) 產(chǎn)生進(jìn)位值 AF 0 記錄運(yùn)算時(shí)第3位 半個(gè)字節(jié) 不產(chǎn)生進(jìn)位值 PF ParityFlag 奇偶標(biāo)志PF 1 結(jié)果操作數(shù)低8位中有偶數(shù)個(gè)1 PF 0 結(jié)果操作數(shù)低8位中有奇數(shù)個(gè)1 用來為機(jī)器中傳送信息時(shí)可能產(chǎn)生的代碼出現(xiàn)情況提供檢驗(yàn)條件 控制標(biāo)志 對(duì)控制標(biāo)志位進(jìn)行設(shè)置后 對(duì)其后的操作起控制作用 控制標(biāo)志位包括3位 TF IF DF 跟蹤 陷阱 標(biāo)志TF 中斷標(biāo)志IF 方向標(biāo)志DF TF TrapFlag 跟蹤 陷阱 標(biāo)志位TF 1 每執(zhí)行一條指令后 自動(dòng)產(chǎn)生一次內(nèi)部中斷 使CPU處于單步執(zhí)行指令工作方式 便于進(jìn)行程序調(diào)試 用戶能檢查程序 TF 0 CPU正常工作 不產(chǎn)生陷阱 IF InteruptFlag 中斷標(biāo)志位IF 1 允許外部可屏蔽中斷 CPU可以響應(yīng)可屏蔽中斷請(qǐng)求 IF 0 關(guān)閉中斷 CPU禁止響應(yīng)可屏蔽中斷請(qǐng)求 IF的狀態(tài)對(duì)不可屏蔽中斷和內(nèi)部軟中斷沒有影響 DF DirectionFlag 方向標(biāo)志位DF 1 每次串處理操作后使變址寄存器SI和DI減量 使串處理從高地址向低地址方向處理 DF 0 每次串處理操作后使變址寄存器SI和DI增量 使串處理從低地址向高地址方向處理 DF方向標(biāo)志位是在串處理指令中控制處理信息的方向用的 控制信息 由系統(tǒng)程序或用戶程序根據(jù)需要用指令來設(shè)置的 狀態(tài)信息 由中央處理器 根據(jù)計(jì)算結(jié)果自動(dòng)設(shè)置的 機(jī)器提供了設(shè)置狀態(tài)信息指令 必要時(shí) 程序員可以用這些指令來建立狀態(tài)信息 在調(diào)試程序時(shí) DEBUG提供了測(cè)試標(biāo)志位的手段 用符號(hào)表示標(biāo)志位的值 每種標(biāo)志位的符號(hào)如下表 DEBUG不提供TF的符號(hào)用于單步方式操作 標(biāo)志 運(yùn)算結(jié)果最高位為0 SF 0 運(yùn)算結(jié)果本身 0 ZF 0低8位中1的個(gè)數(shù)為奇數(shù)個(gè) PF 0 最高位沒有進(jìn)位 CF 0第三位向第四位無進(jìn)位 AF 0 次高位向最高位沒有進(jìn)位 最高位向前沒有進(jìn)位 OF 0 例1 執(zhí)行兩個(gè)數(shù)的加法 分析對(duì)標(biāo)志位的影響 標(biāo)志 運(yùn)算結(jié)果最高位為1 SF 1 運(yùn)算結(jié)果本身不為0 ZF 0 最高位向前無進(jìn)位 CF 0次高位向最高位產(chǎn)生進(jìn)位 而最高位向前沒有進(jìn)位 OF 1 結(jié)果低8位含偶數(shù)個(gè)1 PF 1 第三位向第四位有進(jìn)位 AF 1 在絕大多數(shù)情況下 一次運(yùn)算后并不影響所有標(biāo)志 程序也并不需要對(duì)所有的標(biāo)志作全面的關(guān)注 一般只是在某些操作后 對(duì)其中某個(gè)標(biāo)志進(jìn)行檢測(cè) 例2 執(zhí)行兩個(gè)數(shù)的加法 分析對(duì)標(biāo)志位的影響 二 8088編程結(jié)構(gòu)編程結(jié)構(gòu) 從程序員和使用者的角度來看的結(jié)構(gòu) 這種結(jié)構(gòu)與CPU內(nèi)部的物理結(jié)構(gòu)和實(shí)際布局有區(qū)別 8088編程結(jié)構(gòu)如下頁(yè)圖所示 分兩部分 1 總線接口控制單元 BICU BusInterfaceUnit 2 執(zhí)行部件 EU ExEUtionUnit 8086編程結(jié)構(gòu) 1 總線接口控制單元BICU BusInterfaceUnit 1 功能 負(fù)責(zé)與M I O端口傳送數(shù)據(jù) 具體講 總線接口部件要從內(nèi)存取指令送到指令隊(duì)列 CPU執(zhí)行指令時(shí) 要配合執(zhí)行部件從指定的內(nèi)存單元或者外設(shè)端口中取數(shù)據(jù) 將數(shù)據(jù)傳送給執(zhí)行部件 或把執(zhí)行部件的操作結(jié)果傳送給指定的M或I O口 2 組成4個(gè)段地址寄存器 CS DS ES SS 16位指令指針寄存器IP 20位的地址加法器 16d 段地址 偏移地址 物理地址 6字節(jié) 8086 或4字節(jié) 8088 的指令隊(duì)列 總線控制電路 處理器與外界總線聯(lián)系的轉(zhuǎn)接電路 包括三組總線 20位地址總線 8位雙向數(shù)據(jù)總線 一組控制總線 3 二點(diǎn)說明 指令隊(duì)列8086的指令隊(duì)列為6個(gè)字節(jié) 8088的指令隊(duì)列為4個(gè)字節(jié) 不論是8086還是8088都會(huì)在執(zhí)行指令的同時(shí)從內(nèi)存中取下一條或幾條指令 取來的指令放在指令隊(duì)列中 使BICU具有預(yù)取指令的功能 是一種先進(jìn)先出 FIFO 的數(shù)據(jù)結(jié)構(gòu) 指令執(zhí)行順序順序指令執(zhí)行 指令隊(duì)列存放緊接在執(zhí)行指令后面的那一條指令 執(zhí)行轉(zhuǎn)移指令 BICU清除指令隊(duì)列中的內(nèi)容 從新的地址取入指令 立即送往執(zhí)行運(yùn)算單元 然后再?gòu)男聠卧_始重新填滿隊(duì)列 2 EU ExEUtionUnit 執(zhí)行運(yùn)算單元 1 功能 負(fù)責(zé)指令執(zhí)行 2 組成 4個(gè)通用寄存器 AX BX CX DX4個(gè)專用寄存器 BP SP SI DI 標(biāo)志寄存器 PSW 9個(gè)標(biāo)志位 其中6個(gè)條件標(biāo)志位用于存放結(jié)果狀態(tài) 算術(shù)邏輯單元 16位加法器 用于對(duì)寄存器和指令操作數(shù)進(jìn)行算術(shù)或邏輯運(yùn)算 EU控制系統(tǒng) 接受從總線接口控制單元的指令隊(duì)列中取來的指令代碼 對(duì)其譯碼和向EU內(nèi)各有關(guān)部分發(fā)出時(shí)序命令信號(hào) 協(xié)調(diào)執(zhí)行指令規(guī)定的操作 由此可見 8086 8088取指部分與執(zhí)行部分是分開的 在一條指令的執(zhí)行過程中可以取出下一條 或多條 指令 指令在指令隊(duì)列中排隊(duì) 在一條指令執(zhí)行完成后 就可以立即執(zhí)行下一條指令 減少CPU為取指令而等待的時(shí)間 提高CPU的利用率和整個(gè)運(yùn)行速度 8086 8088微處理器 BICU和EU分開 取指和執(zhí)行可以重迭 大大減少了等待取指所需的時(shí)間 提高CPU的利用率 重迭操作技術(shù) 一方面提高了整個(gè)執(zhí)行速率 另一方面降低了與之相配的存儲(chǔ)器的存取速度的要求 對(duì)于8080與8085及較早的8位微處理器 程序執(zhí)行由取指令和執(zhí)行指令的循環(huán)來完成的 每條指令執(zhí)行完后CPU必須等待到下條指令取出來后才能執(zhí)行 三 存儲(chǔ)器結(jié)構(gòu)1 存儲(chǔ)單元的地址和內(nèi)容2 存儲(chǔ)器地址分段3 各段在存儲(chǔ)器中分配 1 存儲(chǔ)單元的地址和內(nèi)容及與CPU之間數(shù)據(jù)傳送 1 存儲(chǔ)單元的地址和內(nèi)容存儲(chǔ)器位編號(hào) 8088字長(zhǎng)16位 由二個(gè)字節(jié)組成 位編號(hào)如下 高位字節(jié)MSB 8 15位 低位字節(jié)LSB 0 7位 8088內(nèi)部的ALU能進(jìn)行16位運(yùn)算 有關(guān)地址寄存器如SP IP BP SI DI等都是16位的 內(nèi)存單元的地址和內(nèi)容 存儲(chǔ)單元地址 按照字節(jié)編址 存儲(chǔ)單元的的內(nèi)容 一個(gè)存儲(chǔ)單元有效的信息 機(jī)器字長(zhǎng)是16位 大部分?jǐn)?shù)據(jù)以字節(jié)為單位表示 一個(gè)字存入存儲(chǔ)器占有相繼的二個(gè)單元 低位字節(jié)存入低地址 高位字節(jié)存入高地址 字單元的地址采用它的低地址來表示 例 字單元 0004H 1234H 字節(jié)單元 0004H 34H同一個(gè)地址既可以看作字節(jié)單元地址 又可看作字單元地址 需要根據(jù)使用情況確定 字單元地址 可以是偶數(shù)也可以是奇數(shù) 2 CPU和存儲(chǔ)器或I O端口之間傳送數(shù)據(jù) 80868086數(shù)據(jù)總線是16位的 討論CPU和存儲(chǔ)器或I O端口之間傳送數(shù)據(jù)方式 字?jǐn)?shù)據(jù)讀 寫操作字節(jié)讀 寫操作 字?jǐn)?shù)據(jù)讀 寫操作 a 操作數(shù)存放在偶地址開始兩個(gè)存儲(chǔ)單元或兩個(gè)I O端口中 即操作數(shù)字的低8位 在偶地址單元或在偶地址端口 高8位 在奇地址單元或在奇地址端口 在一個(gè)總線周期內(nèi)完成 通常4個(gè)時(shí)鐘周期 16位數(shù)據(jù)傳送 操作數(shù)必須存放在偶地址開始兩個(gè)存儲(chǔ)單元或兩個(gè)I O端口中 對(duì)應(yīng)的偶地址單元 偶地址端口 數(shù)據(jù)通過數(shù)據(jù)總線低8位傳輸 對(duì)應(yīng)的奇地址單元 奇地址端口 數(shù)據(jù)通過數(shù)據(jù)總線高8位傳輸 字?jǐn)?shù)據(jù)讀 寫偶地址字操作如下圖 操作數(shù)存放在奇地址開始兩個(gè)存儲(chǔ)單元或兩個(gè)I O端口中如下圖所示 讀 寫奇地址字 在第一個(gè)總線周期中 對(duì)應(yīng)于奇地址單元或奇地址端口字節(jié) 操作字低8位 通過數(shù)據(jù)總線高8位進(jìn)行傳輸 而數(shù)據(jù)總線低8位處于空閑狀態(tài) 在第二個(gè)總線周期中 對(duì)應(yīng)于偶地址單元或偶地址端口字節(jié) 操作字高8位 通過數(shù)據(jù)總線低8位進(jìn)行傳輸 而數(shù)據(jù)總線高8位處于空閑狀態(tài) 由此可見 操作數(shù)存放在奇地址開始兩個(gè)存儲(chǔ)單元 兩個(gè)I O端口中進(jìn)行數(shù)據(jù)傳輸 8086需要二個(gè)總線周期 字節(jié)讀 寫操作 對(duì)偶地址單元 偶地址端口的字節(jié)數(shù)據(jù)進(jìn)行讀 寫如下圖所示 在一個(gè)總線周期中 只有數(shù)據(jù)總線的低8位傳輸數(shù)據(jù) 高8位處于空閑狀態(tài) 對(duì)奇地址單元 奇地址端口的字節(jié)數(shù)據(jù)進(jìn)行讀 寫如下圖所示 在一個(gè)總線周期中 只有數(shù)據(jù)總線的高8位傳輸數(shù)據(jù) 而低8位處于空閑狀態(tài) 80888088數(shù)據(jù)總線只有8位 討論CPU和存儲(chǔ)器或I O端口之間傳送數(shù)據(jù) 每個(gè)總線周期只傳輸1個(gè)字節(jié) 所以對(duì)每個(gè)字操作要增加4個(gè)時(shí)鐘周期 4 存儲(chǔ)器特性 存儲(chǔ)器的內(nèi)容是取之不盡的 即從某個(gè)單元取出其內(nèi)容后 該單元仍保持原來的內(nèi)容不變 可以重復(fù)取出 只有存入信息后 原有的內(nèi)容自動(dòng)消失 2 存儲(chǔ)器地址分段 8088有20條地址總線 直接尋址能力為220 1M字節(jié) 用16進(jìn)制數(shù)表示1M字節(jié)的地址范圍應(yīng)為00000H FFFFFH 1 8088內(nèi)部20位物理地址形成 2 邏輯地址與物理地址 1 8088內(nèi)部20位物理地址形成 存儲(chǔ)器地址分段8088地址總線是20位的 CPU中的寄存器是16位的 20位地址無法用16位寄存器表示 必須分段 程序員在編制程序時(shí)把存儲(chǔ)器劃分成段 段內(nèi)地址16位 每個(gè)段的大小最大可達(dá)64KB 實(shí)際可以根據(jù)需要來確定段大小 可以是1 100 1000 在64K范圍內(nèi)的任意字節(jié)數(shù) IBMPC機(jī)對(duì)段的起始地址有限制 即段不能從任意地址開始 必須從任一小段 paragraph 的首地址開始 小段的概念從0地址開始每16字節(jié)為一小段 對(duì)于16位地址總線 段內(nèi)存儲(chǔ)器小段地址如下 如 0000H 0001H 0002H 000EH 000FH一個(gè)小段0010H 0011H 0012H 001EH 001FH0020H 0021H 0022H 002EH 002FH FFF0H FFF1H FFF2H FFFEH FFFFH其中 第一列就是每個(gè)小段的首地址 每個(gè)小段首地址特征 在16進(jìn)制表示的地址中 最低位為0H 即20位地址的低4位為0000B 在1M字節(jié)的地址空間 共有個(gè)小段其首地址為 00000H00010H 41230H41240H FFFE0HFFFF0H 64K 20位物理地址形成物理地址 在1M字節(jié)存儲(chǔ)器里 每個(gè)存儲(chǔ)單元都有一個(gè)唯一的20位地址作為該存儲(chǔ)單元的物理地址 CPU訪問存儲(chǔ)器時(shí) 必須先確定所要訪問的存儲(chǔ)單元的物理地址才能取出 或存入 該單元中的內(nèi)容 20位物理地址形成 由16位段地址和16位偏移地址組成 段地址 只取段起始地址高16位值 偏移地址 指在段內(nèi)某內(nèi)存單元物理地址相對(duì)段起始地址的偏移值 3 物理地址計(jì)算方法即把段地址左移4位再加上偏移地址值形成物理地址 寫成 物理地址 16d 段地址 偏移地址 每個(gè)存儲(chǔ)單元只有唯一的物理地址 但可由不同的段地址和不同的偏移地址組成 3 邏輯地址與物理地址 邏輯地址與物理地址概念邏輯地址與物理地址概念如下頁(yè)圖所示 邏輯地址 由段基址和段內(nèi)偏移地址組成的地址 如CS IP 段基址和段內(nèi)偏移地址都是16位的無符號(hào)二進(jìn)制數(shù) 在程序設(shè)計(jì)時(shí)使用 物理地址 存儲(chǔ)器的絕對(duì)地址 20位的實(shí)際地址 范圍從00000H FFFFFH 是由CPU訪問存儲(chǔ)器時(shí)由地址總線發(fā)出的地址 存儲(chǔ)器管理 將程序中邏輯地址轉(zhuǎn)移為物理地址的機(jī)構(gòu)與機(jī)制 物理地址的形成 20000H 25F60H 25F61H 25F62H 25F63H 2000H 段基址 邏 輯 地 址 段內(nèi)偏移地址 5F62H 邏輯地址與物理地址 物理地址 邏輯地址來源 取指令 自動(dòng)選擇代碼段寄存器CS 再加上由IP決定的16位偏移量 計(jì)算得到要取的指令20位物理地址 堆棧棧頂操作 自動(dòng)選擇堆棧段寄存器SS 再加上由SP決定的16位偏移量
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 玻璃幕墻供貨及安裝合同
- 銀行柜員個(gè)人工作總結(jié)
- 2024放射醫(yī)學(xué)知識(shí)題庫(kù)
- 糖尿病酮癥的護(hù)理查房
- 走出自卑心理健康
- 兒科支原體肺炎診療與護(hù)理
- 兒科臨床護(hù)理病例分享
- 自主游戲的培訓(xùn)
- 安全班委培訓(xùn)
- 裝修市場(chǎng)培訓(xùn)方案
- 部編人教版小學(xué)語文1-6年級(jí)詞語表
- 2025屆山東省青島市超銀中學(xué)英語八下期末綜合測(cè)試試題含答案
- 工地切割樁頭合同協(xié)議書
- 手術(shù)室環(huán)境衛(wèi)生管理要求
- 2025-2030中國(guó)激光噴碼機(jī)行業(yè)市場(chǎng)發(fā)展分析及發(fā)展趨勢(shì)與投資前景研究報(bào)告
- 《鐵路旅客運(yùn)輸組織(活頁(yè)式)》課件 7.3 旅客傷害應(yīng)急處置
- 通信光纜割接施工方案
- 農(nóng)村生活污水治理專項(xiàng)施工方案
- 2024北京西城區(qū)四年級(jí)(下)期末英語試題及答案
- 菌菇供貨合同協(xié)議
- 2025屆新高考志愿填報(bào)指南課件
評(píng)論
0/150
提交評(píng)論