計算機組成原理(第2版) - 復(fù)習(xí)_第1頁
計算機組成原理(第2版) - 復(fù)習(xí)_第2頁
計算機組成原理(第2版) - 復(fù)習(xí)_第3頁
計算機組成原理(第2版) - 復(fù)習(xí)_第4頁
計算機組成原理(第2版) - 復(fù)習(xí)_第5頁
已閱讀5頁,還剩132頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、唐朔飛唐朔飛第版第版高 等 教 育 出 版 社高 等 教 育 出 版 社高等教育電子音像出版社高等教育電子音像出版社3.1 總線的基本概念總線的基本概念3.2 總線的分類總線的分類3.3 總線特性及性能指標(biāo)總線特性及性能指標(biāo)3.4 總線結(jié)構(gòu)總線結(jié)構(gòu)3.5 總線控制總線控制一、總線上信息的傳送一、總線上信息的傳送串行串行并行并行二、總線的性能指標(biāo)二、總線的性能指標(biāo)三、總線判優(yōu)控制三、總線判優(yōu)控制四、總線通信控制四、總線通信控制本章主要知識點:本章主要知識點:二、總線的性能指標(biāo)二、總線的性能指標(biāo)1. 總線寬度總線寬度2. 總線帶寬總線帶寬3. 時鐘同步時鐘同步/異步異步4. 總線復(fù)用總線復(fù)用5.

2、信號線數(shù)信號線數(shù)6. 總線控制方式總線控制方式7. 其他指標(biāo)其他指標(biāo)數(shù)據(jù)線數(shù)據(jù)線 的根數(shù)的根數(shù)每秒傳輸?shù)淖畲笞止?jié)數(shù)(每秒傳輸?shù)淖畲笞止?jié)數(shù)(MBps)同步同步、不同步不同步地址線地址線 與與 數(shù)據(jù)線數(shù)據(jù)線 復(fù)用復(fù)用地址線、數(shù)據(jù)線和控制線的地址線、數(shù)據(jù)線和控制線的 總和總和負(fù)載能力負(fù)載能力并發(fā)、自動、仲裁、邏輯、計數(shù)并發(fā)、自動、仲裁、邏輯、計數(shù)三、總線判優(yōu)控制三、總線判優(yōu)控制 總線判優(yōu)控制總線判優(yōu)控制分布式分布式集中式集中式鏈?zhǔn)讲樵冩準(zhǔn)讲樵冇嫈?shù)器定時查詢計數(shù)器定時查詢獨立請求方式獨立請求方式2. 鏈?zhǔn)讲樵兎绞芥準(zhǔn)讲樵兎绞娇偪偩€線控控制制部部件件I/O接口接口0BSBRI/O接口接口1I/O接口接口

3、nBG數(shù)據(jù)線數(shù)據(jù)線地址線地址線BS 總線忙總線忙BR總線請求總線請求BG總線同意總線同意I/O接口接口1 對電路故障最敏感對電路故障最敏感 0BS 總線忙總線忙BR總線請求總線請求總總線線控控制制部部件件數(shù)據(jù)線數(shù)據(jù)線地址線地址線I/O接口接口0BSBRI/O接口接口1I/O接口接口n設(shè)備地址設(shè)備地址3. 計數(shù)器定時查詢方式計數(shù)器定時查詢方式I/O接口接口1 計數(shù)器計數(shù)器設(shè)備地址設(shè)備地址 1排隊器排隊器排隊器排隊器4. 獨立請求方式獨立請求方式總總線線控控制制部部件件數(shù)據(jù)線數(shù)據(jù)線地址線地址線I/O接口接口0I/O接口接口1I/O接口接口nBR0 BG0BR1BG1BRnBGnBG總線同意總線同意

4、BR總線請求總線請求 響應(yīng)時間最快響應(yīng)時間最快四、總線通信控制四、總線通信控制1. 目的目的2. 總線傳輸周期總線傳輸周期主模塊申請主模塊申請,總線仲裁決定,總線仲裁決定主模塊向從模塊主模塊向從模塊 給出地址給出地址 和和 命令命令主模塊和從模塊主模塊和從模塊 交換數(shù)據(jù)交換數(shù)據(jù)主模塊主模塊 撤消有關(guān)信息撤消有關(guān)信息 申請分配階段申請分配階段尋址階段尋址階段傳數(shù)階段傳數(shù)階段結(jié)束階段結(jié)束階段解決通信雙方解決通信雙方 協(xié)調(diào)配合協(xié)調(diào)配合 問題問題由由 統(tǒng)一時標(biāo)統(tǒng)一時標(biāo) 控制數(shù)據(jù)傳送控制數(shù)據(jù)傳送充分充分 挖掘挖掘 系統(tǒng)系統(tǒng) 總線每個瞬間總線每個瞬間 的的 潛力潛力同步通信同步通信 異步通信異步通信 半同

5、步通信半同步通信 分離式通信分離式通信 3. 總線通信的四種方式總線通信的四種方式采用采用 應(yīng)答方式應(yīng)答方式 ,沒有公共時鐘標(biāo)準(zhǔn),沒有公共時鐘標(biāo)準(zhǔn)同步同步、異步結(jié)合異步結(jié)合4.1 概述概述4.2 主存儲器主存儲器4.3 高速緩沖存儲器高速緩沖存儲器4.4 輔助存儲器輔助存儲器一、一、存儲器存儲器分類分類本章主要知識點:本章主要知識點: 二、存儲器的層次結(jié)構(gòu)二、存儲器的層次結(jié)構(gòu)三、主存的概述三、主存的概述 四、存儲器與四、存儲器與 CPU 的連接的連接 五、提高訪存速度的措施五、提高訪存速度的措施磁盤、磁帶、光盤磁盤、磁帶、光盤 高速緩沖存儲器(高速緩沖存儲器(Cache)Flash Memor

6、y存存儲儲器器主存儲器主存儲器輔助存儲器輔助存儲器MROMPROMEPROMEEPROMRAMROM靜態(tài)靜態(tài) RAM動態(tài)動態(tài) RAM高高低低小小大大快快慢慢輔存輔存寄存器寄存器緩存緩存主存主存磁盤磁盤光盤光盤磁帶磁帶光盤光盤磁帶磁帶速度速度容量容量 價格價格 位位1. 存儲器三個主要特性的關(guān)系存儲器三個主要特性的關(guān)系 二、存儲器的層次結(jié)構(gòu)二、存儲器的層次結(jié)構(gòu)CPUCPU主機主機緩存緩存CPU主存主存輔存輔存2. 緩存緩存 主存層次和主存主存層次和主存 輔存層次輔存層次緩存緩存主存主存輔存輔存主存主存10 ns20 ns200 nsms(速度)(速度)(容量)(容量) 高位字節(jié)高位字節(jié) 地址為字

7、地址地址為字地址 低位字節(jié)低位字節(jié) 地址為字地址地址為字地址設(shè)地址線設(shè)地址線 為為24 根根按按 字節(jié)字節(jié) 尋址尋址字地址字地址字節(jié)地址字節(jié)地址11109876543210840字節(jié)地址字節(jié)地址字地址字地址452301420224 = 16 M按按 字字 尋址尋址224 /4= 4 M224 = 16 M按按 字節(jié)字節(jié) 尋址尋址按按 字字 尋址尋址224 /2= 8 M1. 主存中存儲單元地址的分配主存中存儲單元地址的分配三、主存的概述三、主存的概述(2) 存儲速度存儲速度(1) 存儲容量存儲容量(3) 存儲器的帶寬存儲器的帶寬主存主存 存放二進(jìn)制代碼的總位數(shù)存放二進(jìn)制代碼的總位數(shù) 讀出時間讀

8、出時間 寫入時間寫入時間 存儲器的存儲器的 訪問時間訪問時間 存取時間存取時間 存取周期存取周期 讀周期讀周期 寫周期寫周期 連續(xù)兩次獨立的存儲器操作連續(xù)兩次獨立的存儲器操作(讀或?qū)懀┧璧模ㄗx或?qū)懀┧璧?最小間隔時間最小間隔時間 位位/秒秒2. 主存的技術(shù)指標(biāo)主存的技術(shù)指標(biāo) 3. 動態(tài)動態(tài) RAM 和靜態(tài)和靜態(tài) RAM 的比較的比較DRAMSRAM存儲原理存儲原理集成度集成度芯片引腳芯片引腳功耗功耗價格價格速度速度刷新刷新電容電容觸發(fā)器觸發(fā)器高高低低少少多多小小大大低低高高慢慢快快有有無無主存主存緩存緩存 4.只讀存儲器(只讀存儲器(ROM) 1. 掩模掩模 ROM ( MROM ) 2.

9、 PROM (一次性編程一次性編程) 3. EPROM (可擦除可編程可擦除可編程 ) 4. EEPROM (電可擦除可編程電可擦除可編程 ) 5. Flash Memory (閃速型存儲器閃速型存儲器) 四、存儲器與四、存儲器與 CPU 的連接的連接 1. 存儲器容量的擴展存儲器容量的擴展 (1) 位擴展位擴展增加存儲字長增加存儲字長 (2) 字?jǐn)U展字?jǐn)U展增加存儲字的數(shù)量,需要片選增加存儲字的數(shù)量,需要片選 2. 存儲器與存儲器與 CPU 的連接的連接 (1) 地址線的連接地址線的連接(2) 數(shù)據(jù)線的連接數(shù)據(jù)線的連接(3) 讀讀/寫命令線的連接寫命令線的連接(4) 片選線的連接片選線的連接(

10、5) 合理選擇存儲芯片合理選擇存儲芯片(6) 其他其他 時序、負(fù)載時序、負(fù)載五、提高訪存速度的措施五、提高訪存速度的措施 采用高速芯片采用高速芯片 多體并行多體并行 Cache 5.6 DMA方式方式5.5 程序中斷方式程序中斷方式5.4 程序查詢方式程序查詢方式5.3 I/O接口接口5.2 外部設(shè)備外部設(shè)備5.1 概述概述本章知識要點:本章知識要點:一、輸入輸出系統(tǒng)的組成一、輸入輸出系統(tǒng)的組成二、二、I/O 設(shè)備與主機的聯(lián)系方式設(shè)備與主機的聯(lián)系方式三、三、I/O設(shè)備與主機信息傳送的控制方式設(shè)備與主機信息傳送的控制方式四、接口的概述、組成和分類四、接口的概述、組成和分類五、程序查詢方式的流程、

11、接口電路五、程序查詢方式的流程、接口電路六、程序中斷方式的概述、接口電路和中斷處理六、程序中斷方式的概述、接口電路和中斷處理 七、七、DMA方式的概述、接口電路方式的概述、接口電路 一、輸入輸出系統(tǒng)的組成一、輸入輸出系統(tǒng)的組成1. I/O 軟件軟件(1) I/O 指令指令(2) 通道指令通道指令CPU 指令的一部分指令的一部分通道自身的指令通道自身的指令指出數(shù)組的首地址、傳送字?jǐn)?shù)、操作命令指出數(shù)組的首地址、傳送字?jǐn)?shù)、操作命令2. I/O 硬件硬件設(shè)備設(shè)備I/O 接口接口操作碼操作碼命令碼命令碼設(shè)備碼設(shè)備碼二、二、I/O 設(shè)備與主機的聯(lián)系方式設(shè)備與主機的聯(lián)系方式1. I/O 設(shè)備編址方式設(shè)備編址

12、方式(1) 統(tǒng)一編址統(tǒng)一編址(2) 不統(tǒng)一編址不統(tǒng)一編址用取數(shù)、存數(shù)指令用取數(shù)、存數(shù)指令有專門的有專門的 I/O 指令指令2. 設(shè)備選址設(shè)備選址用設(shè)備選擇電路識別是否被選中用設(shè)備選擇電路識別是否被選中3. 傳送方式傳送方式(1) 串行串行(2) 并行并行數(shù)據(jù)字?jǐn)?shù)據(jù)字命令字命令字命令字命令字0 1 1 0 1 0 0 0起始位起始位終止位終止位9.09 ms2 9.09 ms4. 聯(lián)絡(luò)方式聯(lián)絡(luò)方式(1) 立即響應(yīng)立即響應(yīng)(2) 異步工作采用應(yīng)答信號異步工作采用應(yīng)答信號 “Ready”“Strobe”I/O 接接 口口I/O 設(shè)設(shè) 備備CPU(3) 同步工作采用同步時標(biāo)同步工作采用同步時標(biāo)并行并行

13、串行串行起始位起始位終止位終止位9.09 ms2 9.09 ms三、三、I/O設(shè)備與主機信息傳送的控制方式設(shè)備與主機信息傳送的控制方式1. 程序查詢方式程序查詢方式CPU 和和 I/O 串行工作串行工作踏步等待踏步等待CPU讀讀I/O狀態(tài)狀態(tài)檢查狀態(tài)檢查狀態(tài)未準(zhǔn)備就緒未準(zhǔn)備就緒出錯出錯從從I/O接口中讀接口中讀 一個字到一個字到CPU從從CPU向主存向主存 寫入一個字寫入一個字CPU向向I/O發(fā)發(fā) 讀指令讀指令CPU讀讀I/O狀態(tài)狀態(tài)檢查狀態(tài)檢查狀態(tài) 完成否完成否未準(zhǔn)備就緒未準(zhǔn)備就緒現(xiàn)行程序現(xiàn)行程序是是出錯出錯已準(zhǔn)備就緒已準(zhǔn)備就緒否否2. 程序中斷方式程序中斷方式I/O 工作工作CPU 不查詢

14、不查詢CPU 暫?,F(xiàn)行程序暫?,F(xiàn)行程序自身準(zhǔn)備自身準(zhǔn)備與主機交換信息與主機交換信息CPU 和和 I/O 并行工作并行工作 啟動啟動 I/O設(shè)備設(shè)備現(xiàn)行程序現(xiàn)行程序 中斷服務(wù)程序中斷服務(wù)程序KK+1沒有踏步等待現(xiàn)象沒有踏步等待現(xiàn)象中斷現(xiàn)行程序中斷現(xiàn)行程序3. DMA 方式方式主存和主存和 I/O 之間有一條直接數(shù)據(jù)通道之間有一條直接數(shù)據(jù)通道不中斷現(xiàn)行程序不中斷現(xiàn)行程序周期挪用(周期竊取)周期挪用(周期竊?。〤PU 和和 I/O 并行工作并行工作存取周期結(jié)束存取周期結(jié)束CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序CPU 執(zhí)行現(xiàn)行程序執(zhí)行現(xiàn)行程序DMA請求請求啟動啟動I/OI/O準(zhǔn)備準(zhǔn)備I/O準(zhǔn)備準(zhǔn)備一個存取周

15、期一個存取周期實現(xiàn)實現(xiàn)I/O與主存之間的傳送與主存之間的傳送四、接口的概述、組成和分類四、接口的概述、組成和分類什么是接口,與端口的區(qū)別什么是接口,與端口的區(qū)別2. 接口的功能和組成接口的功能和組成功功能能組組成成選址功能選址功能傳送命令的功能傳送命令的功能傳送數(shù)據(jù)的功能傳送數(shù)據(jù)的功能反映設(shè)備狀態(tài)的功能反映設(shè)備狀態(tài)的功能設(shè)備選擇電路設(shè)備選擇電路數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器設(shè)備狀態(tài)標(biāo)記設(shè)備狀態(tài)標(biāo)記完成觸發(fā)器完成觸發(fā)器 D工作觸發(fā)器工作觸發(fā)器 B中斷請求觸發(fā)器中斷請求觸發(fā)器 INTR屏蔽觸發(fā)器屏蔽觸發(fā)器 MASK命令寄存器、命令譯碼器命令寄存器、命令譯碼器檢查狀態(tài)標(biāo)記檢查狀態(tài)標(biāo)記1 設(shè)備設(shè)備1 準(zhǔn)

16、備就緒?準(zhǔn)備就緒?檢查狀態(tài)標(biāo)記檢查狀態(tài)標(biāo)記N 設(shè)備設(shè)備N準(zhǔn)備就緒?準(zhǔn)備就緒?處理設(shè)備處理設(shè)備1是是否否否否處理設(shè)備處理設(shè)備N是是1. 查詢流程查詢流程檢查狀態(tài)標(biāo)記檢查狀態(tài)標(biāo)記交換數(shù)據(jù)交換數(shù)據(jù)準(zhǔn)備就緒準(zhǔn)備就緒?是是否否單個設(shè)備單個設(shè)備多個設(shè)備多個設(shè)備測測試試指指令令轉(zhuǎn)轉(zhuǎn)移移指指令令傳傳送送指指令令五、程序查詢方式的流程、接口電路五、程序查詢方式的流程、接口電路設(shè)備選擇電路設(shè)備選擇電路DBRQQ&數(shù)據(jù)線數(shù)據(jù)線準(zhǔn)備就緒準(zhǔn)備就緒啟動命令啟動命令地址線地址線SEL輸入數(shù)據(jù)輸入數(shù)據(jù)啟動設(shè)備啟動設(shè)備設(shè)備工作設(shè)備工作 結(jié)束結(jié)束DB10 10以輸入為例以輸入為例2. 程序查詢方式的接口電路程序查詢方式的

17、接口電路1. 中斷的概念中斷的概念KK+1QQ+1中斷服務(wù)程序中斷服務(wù)程序1中斷服務(wù)程序中斷服務(wù)程序2入口入口1入口入口2六、程序中斷方式的概述、接口電路和中斷處理六、程序中斷方式的概述、接口電路和中斷處理 2. 程序中斷方式的接口電路程序中斷方式的接口電路(1) 配置中斷請求觸發(fā)器和中斷屏蔽觸發(fā)器配置中斷請求觸發(fā)器和中斷屏蔽觸發(fā)器DQ&1INTR 中斷請求觸發(fā)器中斷請求觸發(fā)器INTR = 1 有請求有請求MASK 中斷屏蔽觸發(fā)器中斷屏蔽觸發(fā)器MASK = 1 被屏蔽被屏蔽來自來自 CPU 的的中斷查詢信號中斷查詢信號受設(shè)備本身控制受設(shè)備本身控制INTR D MASKQD 完成觸發(fā)器完

18、成觸發(fā)器中斷請求中斷請求(2)中斷向量地址形成部件)中斷向量地址形成部件入口地址入口地址向量地址向量地址排隊器輸出排隊器輸出由軟件產(chǎn)生由軟件產(chǎn)生硬件向量法硬件向量法 顯示器服務(wù)程序顯示器服務(wù)程序 打印機服務(wù)程序打印機服務(wù)程序JMP 400JMP 300JMP 200主存主存12H13H14H200300向量地址向量地址入口地址入口地址入口地址入口地址中斷向量地址中斷向量地址 形成部件形成部件 設(shè)備設(shè)備編碼器編碼器1 0 0 0000100100 1 0 000010011詳見第八章詳見第八章由由 硬件硬件 產(chǎn)生產(chǎn)生 向量地址向量地址再由再由 向量地址向量地址 找到找到 入口地址入口地址設(shè)備選擇

19、電路設(shè)備選擇電路DBR DQ&數(shù)據(jù)線數(shù)據(jù)線啟動命令啟動命令地址線地址線SEL輸入數(shù)據(jù)輸入數(shù)據(jù)啟動設(shè)備啟動設(shè)備設(shè)備工作設(shè)備工作 結(jié)束結(jié)束&1QQDINTR BQQMASK 設(shè)備編碼器設(shè)備編碼器排隊器排隊器中斷查詢中斷查詢來自高一級來自高一級 的排隊器的排隊器至低一級至低一級的排隊器的排隊器向量地址向量地址中斷響應(yīng)中斷響應(yīng) INTA中斷請求中斷請求命令譯碼命令譯碼(3)程序中斷方式接口電路的基本組成)程序中斷方式接口電路的基本組成3. I/O 中斷處理過程中斷處理過程(1) CPU 響應(yīng)中斷的條件和時間響應(yīng)中斷的條件和時間 條件條件 時間時間允許中斷觸發(fā)器允許中斷觸發(fā)器 EINT

20、= 1用用 開中斷開中斷 指令將指令將 EINT 置置 “1”用用 關(guān)中斷關(guān)中斷 指令將指令將 EINT 置置“ 0” 或硬件或硬件 自動復(fù)自動復(fù)位位當(dāng)當(dāng) D = 1(隨機)且隨機)且 MASK = 0 時時在每條指令執(zhí)行階段的結(jié)束前在每條指令執(zhí)行階段的結(jié)束前CPU 發(fā)發(fā) 中斷查詢信號中斷查詢信號(將(將 INTR 置置“1”)設(shè)備選擇電路設(shè)備選擇電路DBR DQ&數(shù)據(jù)線數(shù)據(jù)線啟動命令啟動命令地址線地址線SEL輸入數(shù)據(jù)輸入數(shù)據(jù)啟動設(shè)備啟動設(shè)備設(shè)備工作設(shè)備工作 結(jié)束結(jié)束&1QQDINTR BQQ MASK設(shè)備編碼器設(shè)備編碼器排隊器排隊器中斷查詢中斷查詢來自高一級來自高一級 的排隊

21、器的排隊器至低一級至低一級的排隊器的排隊器向量地址向量地址中斷響應(yīng)中斷響應(yīng) INTA中斷請求中斷請求命令譯碼命令譯碼(2) I/O 中斷處理過程中斷處理過程10&DBR設(shè)備選擇電路設(shè)備選擇電路01以輸入為例以輸入為例七、七、DMA方式的概述、接口電路方式的概述、接口電路 1. DMA 與主存交換數(shù)據(jù)的三種方式與主存交換數(shù)據(jù)的三種方式(1) 停止停止 CPU 訪問主存訪問主存控制簡單控制簡單CPU 處于不工作狀態(tài)或保持狀態(tài)處于不工作狀態(tài)或保持狀態(tài)未充分發(fā)揮未充分發(fā)揮 CPU 對主存的利用率對主存的利用率主存工作時間主存工作時間CPU不執(zhí)行程序不執(zhí)行程序DMA不工作不工作DMA不工作不工作

22、DMA工作工作 CPU控制控制并使用主存并使用主存 DMA控制控制并使用主存并使用主存t(2) 周期挪用(或周期竊?。┲芷谂灿茫ɑ蛑芷诟`?。〥MA 訪問主存有三種可能訪問主存有三種可能 CPU 此時不訪存此時不訪存 CPU 正在訪存正在訪存 CPU 與與 DMA 同時請求訪存同時請求訪存此時此時 CPU 將總線控制權(quán)讓給將總線控制權(quán)讓給 DMA主存工作時間主存工作時間 CPU控制控制并使用主存并使用主存 DMA控制控制并使用主存并使用主存t(3) DMA 與與 CPU 交替訪問交替訪問主存工作時間主存工作時間DMA控制控制并使用主存并使用主存CPU控制控制并使用主存并使用主存tCPU 工作周期

23、工作周期C1 專供專供 DMA 訪存訪存C2 專供專供 CPU 訪存訪存所有指令執(zhí)行過程中的一個基準(zhǔn)時間所有指令執(zhí)行過程中的一個基準(zhǔn)時間不需要不需要 申請建立和歸還申請建立和歸還 總線的使用權(quán)總線的使用權(quán)2. DMA 接口的功能和組成接口的功能和組成(1)DMA 接口功能接口功能(1) 向向 CPU 申請申請 DMA 傳送傳送(2) 處理總線處理總線 控制權(quán)的轉(zhuǎn)交控制權(quán)的轉(zhuǎn)交(3) 管理管理 系統(tǒng)總線、系統(tǒng)總線、控制控制 數(shù)據(jù)傳送數(shù)據(jù)傳送(4) 確定確定 數(shù)據(jù)傳送的數(shù)據(jù)傳送的 首地址和長度首地址和長度(5) DMA 傳送結(jié)束時,傳送結(jié)束時,給出操作完成信號給出操作完成信號修正修正 傳送過程中的

24、數(shù)據(jù)傳送過程中的數(shù)據(jù) 地址地址 和和 長度長度DMA接口接口主主存存CPU(2)DMA 接口組成接口組成DMA 控控 制制 邏邏 輯輯 中中 斷斷 機機 構(gòu)構(gòu)設(shè)備設(shè)備HLDAARWCDARHRQ中斷請求中斷請求數(shù)據(jù)線數(shù)據(jù)線地址線地址線+1+1溢出信號溢出信號DREQDACKBR6.1 無符號數(shù)和有符號數(shù)無符號數(shù)和有符號數(shù)6.3 定點運算定點運算6.2 數(shù)的定點表示和浮點表示數(shù)的定點表示和浮點表示6.4 浮點四則運算浮點四則運算6.5 算術(shù)邏輯單元算術(shù)邏輯單元本章知識要點:本章知識要點:一、四種機器數(shù)的表示方法一、四種機器數(shù)的表示方法二、數(shù)的定點表示和浮點表示二、數(shù)的定點表示和浮點表示三、定點運

25、算三、定點運算四、浮點四則運算四、浮點四則運算1. 原碼表示法原碼表示法帶符號的絕對值表示帶符號的絕對值表示(1) 定義定義整數(shù)整數(shù)x 為真值為真值n 為整數(shù)的位數(shù)為整數(shù)的位數(shù)如如x = +1110 x原原 = 0 , 1110 x原原 = 24 + 1110 = 1 , 1110 x = 1110 x原原 = 0,x 2n x 02n x 0 x 2n用用 逗號逗號 將符號位將符號位和數(shù)值部分隔開和數(shù)值部分隔開一、四種機器數(shù)的表示方法一、四種機器數(shù)的表示方法小數(shù)小數(shù)x 為真值為真值如如x = + 0.1101x原原 = 0 . 1101 x = 0.1101x原原 = 1 ( 0.1101)

26、 = 1 . 1101 x 1 x 0 x原原 = 1 x 0 x 1x = 0.1000000 x原原 = 1 ( 0.1000000) = 1 . 1000000 x = + 0.1000000 x原原 = 0 . 1000000用用 小數(shù)點小數(shù)點 將符號將符號位和數(shù)值部分隔開位和數(shù)值部分隔開用用 小數(shù)點小數(shù)點 將符號將符號位和數(shù)值部分隔開位和數(shù)值部分隔開(1) 補碼定義補碼定義整數(shù)整數(shù)x 為真值為真值n 為整數(shù)的位數(shù)為整數(shù)的位數(shù)x補補 = 0,x 2n x 02n+1 + x 0 x 2n(mod 2n+1)如如x = +1010 x補補 = 27+1 +( 1011000 )=x補補

27、= 0,1010 x = 10110001,0101000用用 逗號逗號 將符號位將符號位和數(shù)值部分隔開和數(shù)值部分隔開10110001000000002. 補碼表示法補碼表示法小數(shù)小數(shù)x 為真值為真值x = + 0.1110 x補補 = x 1 x 02 + x 0 x 1(mod 2)如如x補補 = 0.1110 x = 0.11000001.0100000 x補補 = 2 + ( 0.1100000 )=用用 小數(shù)點小數(shù)點 將符號位將符號位和數(shù)值部分隔開和數(shù)值部分隔開0.110000010.0000000(2) 求補碼的快捷方式求補碼的快捷方式= 100000= 1,011010101 +

28、 1= 1,0110 又又x原原 = 1,1010則則x補補 = 24+1 1010= 11111 + 1 1010= 1111110101010當(dāng)真值為當(dāng)真值為 負(fù)負(fù) 時,時,補碼補碼 可用可用 原碼除符號位外原碼除符號位外每位取反,末位加每位取反,末位加 1 求得求得+ 1設(shè)設(shè) x = 1010 時時3. 反碼表示法反碼表示法(1) 定義定義整數(shù)整數(shù)x反反 = 0,x 2n x 0( 2n+1 1) + x 0 x 2n(mod 2n+1 1)如如x = +1101x反反 = 0,1101 = 1,0010 x = 1101x反反 = (24+1 1) 1101 = 11111 1101用

29、用 逗號逗號 將符號位將符號位和數(shù)值部分隔開和數(shù)值部分隔開x 為真值為真值n 為整數(shù)的位數(shù)為整數(shù)的位數(shù)小數(shù)小數(shù)x = + 0.1101x反反 = 0.1101x = 0.1010 x反反 = (2 2-4) 0.1010= 1.1111 0.1010= 1.0101如如x反反 = x 1 x 0( 2 2-n) + x 0 x 1(mod 2 2-n)用用 小數(shù)點小數(shù)點 將符號位將符號位和數(shù)值部分隔開和數(shù)值部分隔開x 為真值為真值n 為小數(shù)的位數(shù)為小數(shù)的位數(shù)例例6.12 解:解:已知已知 y補補 求求 y補補 y補補 = 0. y1 y2 yny = 0. y1 y2 yny = 0. y1

30、y2 yn y補補 = 1.y1 y2 yn + 2-n y補補 = 1. y1 y2 yn y原原 = 1. y1 y2 yn + 2-n y = (0. y1 y2 yn + 2-n) y = 0. y1 y2 yn + 2-n y補補 = 0. y1 y2 yn + 2-n設(shè)設(shè) y補補 = y0. y1 y2 yn每位取反,每位取反,即得即得 y補補y補補連同符號位在內(nèi),連同符號位在內(nèi),末位加末位加 1每位取反,每位取反,即得即得 y補補y補補連同符號位在內(nèi),連同符號位在內(nèi),末位加末位加 1三種機器數(shù)的小結(jié)三種機器數(shù)的小結(jié) 對于對于正數(shù)正數(shù),原碼原碼 = 補碼補碼 = 反碼反碼 對于對于

31、負(fù)數(shù)負(fù)數(shù) ,符號位為符號位為 1,其其 數(shù)值部分?jǐn)?shù)值部分原碼除符號位外每位取反末位加原碼除符號位外每位取反末位加 1 補碼補碼原碼除符號位外每位取反原碼除符號位外每位取反 反碼反碼 最高位最高位為為符號位符號位,書寫上用,書寫上用“,”(整數(shù))(整數(shù))或或“.”(小數(shù))將數(shù)值部分和符號位隔開(小數(shù))將數(shù)值部分和符號位隔開4. 移碼表示法移碼表示法補碼表示很難直接判斷其真值大小補碼表示很難直接判斷其真值大小(1) 移碼移碼定義定義x 為真值,為真值,n 為為 整數(shù)的位數(shù)整數(shù)的位數(shù)移碼在數(shù)軸上的表示移碼在數(shù)軸上的表示x移碼移碼2n+112n2n 12n00真值真值如如x = 10100 x移移 =

32、 25 + 10100用用 逗號逗號 將符號位將符號位和數(shù)值部分隔開和數(shù)值部分隔開x = 10100 x移移 = 25 10100 x移移 = 2n + x(2nx 2n)= 1,10100= 0,01100(2) 移碼和補碼的比較移碼和補碼的比較補碼與移碼只差一個符號位補碼與移碼只差一個符號位(3) 移碼的特點移碼的特點 +0移移 = 0移移最小真值的移碼為全最小真值的移碼為全 0用移碼表示浮點數(shù)的階碼用移碼表示浮點數(shù)的階碼能方便地判斷浮點數(shù)的階碼大小能方便地判斷浮點數(shù)的階碼大小小數(shù)點按約定方式標(biāo)出小數(shù)點按約定方式標(biāo)出1. 定點表示定點表示Sf S1S2 Sn數(shù)符數(shù)符數(shù)值部分?jǐn)?shù)值部分小數(shù)點位

33、置小數(shù)點位置Sf S1S2 Sn數(shù)符數(shù)符數(shù)值部分?jǐn)?shù)值部分小數(shù)點位置小數(shù)點位置或或定點機定點機小數(shù)定點機小數(shù)定點機整數(shù)定點機整數(shù)定點機原碼原碼補碼補碼反碼反碼(1 2-n) +(1 2-n)(2n 1) +( 2n 1) 1 +(1 2-n) 2n +( 2n 1)(1 2-n) +(1 2-n)(2n 1) +( 2n 1)二、數(shù)的定點表示和浮點表示二、數(shù)的定點表示和浮點表示2. 浮點表示浮點表示N = Srj浮點數(shù)的一般形式浮點數(shù)的一般形式S 尾數(shù)尾數(shù)j 階碼階碼r 基數(shù)(基值)基數(shù)(基值)計算機中計算機中 r 取取 2、4、8、16 等等計算機中計算機中 S 小數(shù)、可正可負(fù)小數(shù)、可正可負(fù)j

34、 整數(shù)、可正可負(fù)整數(shù)、可正可負(fù)浮點數(shù)的表示形式浮點數(shù)的表示形式Sf 代表浮點數(shù)的符號代表浮點數(shù)的符號n 其位數(shù)反映浮點數(shù)的精度其位數(shù)反映浮點數(shù)的精度m 其位數(shù)反映浮點數(shù)的表示范圍其位數(shù)反映浮點數(shù)的表示范圍jf 和和 m 共同表示小數(shù)點的實際位置共同表示小數(shù)點的實際位置jf j1 j2 jm Sf S1 S2 Sn j 階碼階碼S 尾數(shù)尾數(shù)階符階符數(shù)符數(shù)符階碼的階碼的數(shù)值部分?jǐn)?shù)值部分尾數(shù)的數(shù)值部分尾數(shù)的數(shù)值部分小數(shù)點位置小數(shù)點位置練習(xí)練習(xí) 設(shè)機器數(shù)字長為設(shè)機器數(shù)字長為 24 位,欲表示位,欲表示3萬的十進(jìn)制數(shù),萬的十進(jìn)制數(shù),試問在保證數(shù)的最大精度的前提下,除階符、數(shù)符各試問在保證數(shù)的最大精度的前

35、提下,除階符、數(shù)符各 取取1 位外,階碼、尾數(shù)各取幾位?位外,階碼、尾數(shù)各取幾位?滿足滿足 最大精度最大精度 可取可取 m = 4,n = 18解:解:m = 4,5,6,15 位二進(jìn)制數(shù)可反映位二進(jìn)制數(shù)可反映 3 萬之間的十進(jìn)制數(shù)萬之間的十進(jìn)制數(shù) 215 = 32768214 = 16384215 0. 15位位 浮點數(shù)的規(guī)格化形式浮點數(shù)的規(guī)格化形式r = 2尾數(shù)最高位為尾數(shù)最高位為 1r = 4尾數(shù)最高尾數(shù)最高 2 位不全為位不全為 0r = 8尾數(shù)最高尾數(shù)最高 3 位不全為位不全為 0浮點數(shù)的規(guī)格化浮點數(shù)的規(guī)格化r = 2左規(guī)左規(guī) 尾數(shù)左移尾數(shù)左移 1 位,階碼減位,階碼減 1右規(guī)右規(guī)

36、尾數(shù)右移尾數(shù)右移 1 位,階碼加位,階碼加 1r = 4左規(guī)左規(guī) 尾數(shù)左移尾數(shù)左移 2 位,階碼減位,階碼減 1右規(guī)右規(guī) 尾數(shù)右移尾數(shù)右移 2 位,階碼加位,階碼加 1r = 8左規(guī)左規(guī) 尾數(shù)左移尾數(shù)左移 3 位,階碼減位,階碼減 1右規(guī)右規(guī) 尾數(shù)右移尾數(shù)右移 3 位,階碼加位,階碼加 1基數(shù)基數(shù) r 越大,可表示的浮點數(shù)的范圍越大越大,可表示的浮點數(shù)的范圍越大基數(shù)不同,浮點數(shù)的基數(shù)不同,浮點數(shù)的規(guī)格化形式不同規(guī)格化形式不同基數(shù)基數(shù) r 越大,浮點數(shù)的精度降低越大,浮點數(shù)的精度降低 三、定點運算三、定點運算1. 移位的意義移位的意義在計算機中,在計算機中,移位與加減配合,能夠?qū)崿F(xiàn)乘除運算移位與

37、加減配合,能夠?qū)崿F(xiàn)乘除運算2. 算術(shù)移位規(guī)則算術(shù)移位規(guī)則1右移右移 添添 1左移左移 添添 00反反 碼碼補補 碼碼原原 碼碼負(fù)數(shù)負(fù)數(shù)0原碼、補碼、反碼原碼、補碼、反碼正數(shù)正數(shù)符號位不變符號位不變添補代碼添補代碼碼碼 制制真值真值算術(shù)移位算術(shù)移位:有符號數(shù)的移位有符號數(shù)的移位邏輯移位邏輯移位:無符號數(shù)的移位無符號數(shù)的移位3. 加減法運算加減法運算補碼加減運算公式補碼加減運算公式(1) 加法加法 (2) 減法減法 整數(shù)整數(shù) A補補 + B補補= A+B補補(mod 2n+1)小數(shù)小數(shù) A補補 + B補補= A+B補補(mod 2)AB = A+(B )整數(shù)整數(shù) A B補補= A+(B )補補=

38、A補補 + B補補(mod 2n+1)小數(shù)小數(shù) A B補補= A+(B )補補(mod 2)連同符號位一起相加,符號位產(chǎn)生的進(jìn)位自然丟掉連同符號位一起相加,符號位產(chǎn)生的進(jìn)位自然丟掉= A補補 + B補補 舉例舉例解:解:A補補B補補A補補 + B補補+= 0 . 1 0 1 1= 1 . 1 0 1 1= 1 0 . 0 1 1 0 = A + B補補驗證驗證例例 6.18設(shè)設(shè) A = 0.1011,B = 0.0101求求 A + B補補0.1011 0.01010.0110 A + B = 0 . 0 1 1 0A補補B補補A補補 + B補補+= 1 , 0 1 1 1= 1 , 1 0

39、1 1= 1 1 , 0 0 1 0= A + B補補驗證驗證 1001 1110 0101+例例 6.19設(shè)設(shè) A = 9,B = 5 求求 A+B補補解:解: A + B = 11104. 乘法運算(豎式)乘法運算(豎式)0 . 0 0 0 00 . 1 1 0 10 . 1 1 0 10 . 1 1 0 10 . 0 0 0 00 . 1 1 0 1初態(tài),部分積初態(tài),部分積 = 0乘數(shù)為乘數(shù)為 1,加被乘數(shù),加被乘數(shù)乘數(shù)為乘數(shù)為 1,加被乘數(shù),加被乘數(shù)乘數(shù)為乘數(shù)為 0,加,加 01 . 0 0 1 110 . 1 0 0 11 11 . 0 0 0 11 1 1乘數(shù)為乘數(shù)為 1,加,加

40、被乘數(shù)被乘數(shù)0 . 1 0 0 01 1 1 11,得結(jié)果,得結(jié)果1 0 1 1=0 . 0 1 1 01,形成新的部分積,形成新的部分積1 1 0 1=0 . 1 0 0 11,形成新的部分積,形成新的部分積1 1 1 0=0 . 0 1 0 01,形成新的部分積,形成新的部分積1 1 1 1= 部部 分分 積積 乘乘 數(shù)數(shù) 說說 明明小結(jié)小結(jié) 被乘數(shù)只與部分積的高位相加被乘數(shù)只與部分積的高位相加 由乘數(shù)的末位決定被乘數(shù)是否與原部分積相加,由乘數(shù)的末位決定被乘數(shù)是否與原部分積相加, 然后然后 1 位形成新的部分積位形成新的部分積,同時,同時 乘數(shù)乘數(shù) 1位位(末位移丟),空出高位存放部分積的

41、低位。(末位移丟),空出高位存放部分積的低位。硬件硬件3個寄存器,具有移位功能個寄存器,具有移位功能1個全加器個全加器 乘法乘法 運算可用運算可用 加和移位實現(xiàn)加和移位實現(xiàn)n = 4,加加 4 次次,移移 4 次次5. 原碼乘法原碼乘法(1) 原碼一位乘運算規(guī)則原碼一位乘運算規(guī)則以小數(shù)為例以小數(shù)為例設(shè)設(shè)x原原 = x0. x1x2 xn y原原 = y0. y1y2 yn= (x0 y0). x*y*x y原原 = (x0 y0).(0. x1x2 xn)(0.y1y2 yn)式中式中 x*= 0. x1x2 xn 為為 x 的絕對值的絕對值 y*= 0. y1y2 yn 為為 y 的絕對值的

42、絕對值 乘積的符號位單獨處理乘積的符號位單獨處理 x0 y0數(shù)值部分為絕對值相乘數(shù)值部分為絕對值相乘 x* y*(2) 原碼一位乘遞推公式原碼一位乘遞推公式x* y* = x*(0.y1y2 yn)= x*(y12-1+y22-2+ + yn2-n)= 2-1(y1x*+2-1(y2x*+ 2-1(ynx* + 0) ) z1znz0 = 0z1 = 2-1(ynx*+z0)z2 = 2-1(yn-1x*+z1)zn = 2-1(y1x*+zn-1)z0例例6.21已知已知 x = 0.1110 y = 0.1101 求求x y原原解:解:數(shù)值部分的運算數(shù)值部分的運算0 . 0 0 0 00

43、. 1 1 1 00 . 1 1 1 00 . 0 0 0 00 . 1 1 1 00 . 1 1 1 0部分積部分積 初態(tài)初態(tài) z0 = 0 部部 分分 積積 乘乘 數(shù)數(shù) 說說 明明0 . 0 1 1 101 . 0 0 0 11 01 . 0 1 1 01 1 00 . 1 0 1 10 1 1 01,得得 z4邏輯右移邏輯右移1 1 0 1=0 . 0 1 1 11,得得 z10 1 1 0=0 . 0 0 1 11,得得 z21 0 1 1=0 . 1 0 0 01,得得 z31 1 0 1=邏輯右移邏輯右移邏輯右移邏輯右移邏輯右移邏輯右移+ + + + + x*+ 0+ x*+ x*

44、 數(shù)值部分按絕對值相乘數(shù)值部分按絕對值相乘 乘積的符號位乘積的符號位 x0 y0 = 1 0 = 1x* y* = 0. 1 0 1 1 0 1 1 0則則 x y原原 = 1. 1 0 1 1 0 1 1 0特點特點絕對值運算絕對值運算邏輯移位邏輯移位例例6.21 結(jié)果結(jié)果用移位的次數(shù)判斷乘法是否結(jié)束用移位的次數(shù)判斷乘法是否結(jié)束6. 補碼乘法補碼乘法設(shè)設(shè) 被乘數(shù)被乘數(shù)乘數(shù)乘數(shù)x補補 = x0. x1x2 xny補補 = y0. y1y2 yn 被乘數(shù)任意,乘數(shù)為正被乘數(shù)任意,乘數(shù)為正同原碼乘同原碼乘但但 加加 和和 移位移位 按按 補碼規(guī)則補碼規(guī)則 運算運算乘積的符號自然形成乘積的符號自然形

45、成 被乘數(shù)任意,乘數(shù)為負(fù)被乘數(shù)任意,乘數(shù)為負(fù)乘數(shù)乘數(shù)y補補,去掉符號位去掉符號位,操作同,操作同 最后最后 加加x補補,校正項校正項(1) 補碼一位乘運算規(guī)則補碼一位乘運算規(guī)則以小數(shù)為例以小數(shù)為例乘法小結(jié)乘法小結(jié) 原碼乘原碼乘 符號位符號位 單獨處理單獨處理 補碼乘補碼乘 符號位符號位 自然形成自然形成 原碼乘去掉符號位運算原碼乘去掉符號位運算 即為無符號數(shù)乘法即為無符號數(shù)乘法 不同的乘法運算需有不同的硬件支持不同的乘法運算需有不同的硬件支持 整數(shù)乘法與小數(shù)乘法完全相同整數(shù)乘法與小數(shù)乘法完全相同 可用可用 逗號逗號 代替小數(shù)點代替小數(shù)點四、浮點四則運算四、浮點四則運算x = Sx 2jxy =

46、 Sy 2jy1. 對階對階(1) 求階差求階差(2) 對階原則對階原則j = jx jy = jx= jy 已對齊已對齊jx jy jx jy x 向向 y 看齊看齊y 向向 x 看齊看齊x 向向 y 看齊看齊y 向向 x 看齊看齊小階向大階看齊小階向大階看齊Sx 1, Sy 1, Sx 1, Sy 1, = 0 0 0 jx1jy+1 jx+1jy11. 浮點加減運算浮點加減運算例如例如 x = 0.1101 201 y = (0.1010) 211求求 x + y解:解:x補補 = 00, 01; 00.1101 y補補 = 00, 11; 11.0110 1. 對階對階j補補 = jx

47、補補 jy補補= 00, 0111, 0111, 10階差為負(fù)(階差為負(fù)( 2)Sx補補 = 00.0011 Sy補補= 11.011011.1001 Sx 2 jx+ 2 x+y補補 = 00, 11; 11. 1001 對階對階x補補 = 00, 11; 00.0011+對階后的對階后的Sx補補 求階差求階差2. 尾數(shù)求和尾數(shù)求和3. 規(guī)格化規(guī)格化(1) 規(guī)格化數(shù)的定義規(guī)格化數(shù)的定義(2) 規(guī)格化數(shù)的判斷規(guī)格化數(shù)的判斷r = 2 |S| 1 12S0真值真值原碼原碼補碼補碼反碼反碼規(guī)格化形式規(guī)格化形式S 0規(guī)格化形式規(guī)格化形式真值真值原碼原碼補碼補碼反碼反碼0.1 0.1 0.1 0.1

48、原碼原碼 不論正數(shù)不論正數(shù)、負(fù)數(shù)負(fù)數(shù),第一數(shù)位為第一數(shù)位為1補碼補碼 符號位和第符號位和第 一數(shù)位不同一數(shù)位不同 0.1 1.1 1.0 1.0 右規(guī)右規(guī)x +y補補 = 00, 010; 01. 001010 x +y補補 = 00, 011; 00. 100101右規(guī)后右規(guī)后 x +y = 0. 100101 2114. 舍入舍入在在 對階對階 和和 右規(guī)右規(guī) 過程中,可能出現(xiàn)過程中,可能出現(xiàn) 尾數(shù)末位丟失尾數(shù)末位丟失引起誤差,需考慮舍入引起誤差,需考慮舍入(1) 0 舍舍 1 入法入法 (2) 恒置恒置 “1” 法法7.1 機器指令機器指令 7.2 操作數(shù)類型和操作類型操作數(shù)類型和操作類

49、型 7.3 尋址方式尋址方式 7.4 指令格式舉例指令格式舉例 7.5 RISC 技術(shù)技術(shù) 一、機器指令一、機器指令本章知識要點:本章知識要點:二、尋址方式二、尋址方式 三、三、RISC 1. 指令的一般格式指令的一般格式 操作碼字段操作碼字段 地址碼字段地址碼字段一、機器指令一、機器指令2. 指令字長指令字長指令字長決定于指令字長決定于操作碼的長度操作碼的長度指令字長指令字長 = 存儲字長存儲字長2. 指令字長指令字長 可變可變操作數(shù)地址的長度操作數(shù)地址的長度操作數(shù)地址的個數(shù)操作數(shù)地址的個數(shù)1. 指令字長指令字長 固定固定按字節(jié)的倍數(shù)變化按字節(jié)的倍數(shù)變化3.小結(jié)小結(jié) 當(dāng)用一些硬件資源代替指令

50、字中的地址碼字段后當(dāng)用一些硬件資源代替指令字中的地址碼字段后 當(dāng)指令的地址字段為寄存器時當(dāng)指令的地址字段為寄存器時 可擴大指令操作數(shù)的尋址范圍可擴大指令操作數(shù)的尋址范圍 可縮短指令字長可縮短指令字長 可減少訪存次數(shù)可減少訪存次數(shù) 三地址三地址 OP R1, R2, R3 二地址二地址 OP R1, R2 一地址一地址 OP R1 指令執(zhí)行階段不訪存指令執(zhí)行階段不訪存 可縮短指令字長可縮短指令字長二、尋址方式二、尋址方式 確定確定 本條指令本條指令 的的 操作數(shù)地址操作數(shù)地址下一條下一條 欲執(zhí)行欲執(zhí)行 指令指令 的的 指令地址指令地址指令尋址指令尋址數(shù)據(jù)尋址數(shù)據(jù)尋址尋址方式尋址方式指令尋址指令尋

51、址順序順序( PC ) + 1 PC跳躍跳躍由轉(zhuǎn)移指令指出由轉(zhuǎn)移指令指出LDA 1000ADD 1001DEC 1200JMP 7LDA 2000SUB 2001INCSTA 2500LDA 1100.0123456789PC+1指令地址尋址方式指令地址尋址方式指令地址指令地址指令指令順序?qū)ぶ讽樞驅(qū)ぶ?順序?qū)ぶ讽樞驅(qū)ぶ?順序?qū)ぶ讽樞驅(qū)ぶ?跳躍尋址跳躍尋址7順序?qū)ぶ讽樞驅(qū)ぶ?數(shù)據(jù)尋址數(shù)據(jù)尋址 形式地址形式地址 指令字中的地址指令字中的地址 有效地址有效地址 操作數(shù)的真實地址操作數(shù)的真實地址 約定約定 指令字長指令字長 = 存儲字長存儲字長 = 機器字長機器字長1. 立即尋址立即尋址 指令執(zhí)行階段

52、不訪存指令執(zhí)行階段不訪存 A 的位數(shù)限制了立即數(shù)的范圍的位數(shù)限制了立即數(shù)的范圍形式地址形式地址 A操作碼操作碼尋址特征尋址特征OP # A立即尋址特征立即尋址特征立即數(shù)立即數(shù) 可正可負(fù)可正可負(fù) 補碼補碼形式地址形式地址 A 就是操作數(shù)就是操作數(shù)2. 直接尋址直接尋址EA = A操作數(shù)操作數(shù)主存主存尋址特征尋址特征LDAAAACC 執(zhí)行階段訪問一次存儲器執(zhí)行階段訪問一次存儲器 A 的位數(shù)決定了該指令操作數(shù)的尋址范圍的位數(shù)決定了該指令操作數(shù)的尋址范圍 操作數(shù)的地址不易修改(必須修改操作數(shù)的地址不易修改(必須修改A)有效地址由形式地址直接給出有效地址由形式地址直接給出3. 隱含尋址隱含尋址操作數(shù)地址

53、隱含在操作碼中操作數(shù)地址隱含在操作碼中ADDA操作數(shù)操作數(shù)主存主存尋址特征尋址特征AACC暫存暫存ALU另一個操作數(shù)另一個操作數(shù)隱含在隱含在 ACC 中中如如 8086MUL 指令指令被乘數(shù)隱含在被乘數(shù)隱含在 AX(16位)或位)或 AL(8位)中位)中MOVS 指令指令源操作數(shù)的地址隱含在源操作數(shù)的地址隱含在 SI 中中目的操作數(shù)的地址隱含在目的操作數(shù)的地址隱含在 DI 中中 指令字中少了一個地址字段,可縮短指令字長指令字中少了一個地址字段,可縮短指令字長4. 間接尋址間接尋址EA =(A) 有效地址由形式地址間接提供有效地址由形式地址間接提供OPA尋址特征尋址特征AEA主存主存EAA1EA

54、 A1主存主存 EA10 執(zhí)行指令階段執(zhí)行指令階段 2 次訪存次訪存 可擴大尋址范圍可擴大尋址范圍 便于編制程序便于編制程序OPA尋址特征尋址特征A一次間址一次間址多次間址多次間址操作數(shù)操作數(shù)操作數(shù)操作數(shù)多次訪存多次訪存5. 寄存器尋址寄存器尋址EA = Ri 執(zhí)行階段不訪存,只訪問寄存器,執(zhí)行速度快執(zhí)行階段不訪存,只訪問寄存器,執(zhí)行速度快OPRi尋址特征尋址特征 寄存器個數(shù)有限,可縮短指令字長寄存器個數(shù)有限,可縮短指令字長操作數(shù)操作數(shù)R0RiRn寄存器寄存器有效地址即為寄存器編號有效地址即為寄存器編號EA = ( Ri )6. 寄存器間接尋址寄存器間接尋址 有效地址在寄存器中,有效地址在寄存

55、器中, 操作數(shù)在存儲器中,執(zhí)行階段訪存操作數(shù)在存儲器中,執(zhí)行階段訪存操作數(shù)操作數(shù)主存主存OPRi尋址特征尋址特征 便于編制循環(huán)程序便于編制循環(huán)程序地址地址R0RiRn寄存器寄存器有效地址在寄存器中有效地址在寄存器中7. 基址尋址基址尋址(1) 采用專用寄存器作基址寄存器采用專用寄存器作基址寄存器EA = ( BR ) + ABR 為基址寄存器為基址寄存器OPA操作數(shù)操作數(shù)主存主存尋址特征尋址特征ALUBR 可擴大尋址范圍可擴大尋址范圍 有利于多道程序有利于多道程序 BR 內(nèi)容由操作系統(tǒng)或管理程序確定內(nèi)容由操作系統(tǒng)或管理程序確定 在程序的執(zhí)行過程中在程序的執(zhí)行過程中 BR 內(nèi)容不變,形式地址內(nèi)容

56、不變,形式地址 A 可變可變(2) 采用通用寄存器作基址寄存器采用通用寄存器作基址寄存器操作數(shù)操作數(shù)主存主存尋址特征尋址特征ALUOPR0AR0 作基址寄存器作基址寄存器 由用戶指定哪個通用寄存器作為基址寄存器由用戶指定哪個通用寄存器作為基址寄存器通用寄存器通用寄存器R0Rn-1R1 基址寄存器的內(nèi)容由操作系統(tǒng)確定基址寄存器的內(nèi)容由操作系統(tǒng)確定 在程序的執(zhí)行過程中在程序的執(zhí)行過程中 R0 內(nèi)容不變,形式地址內(nèi)容不變,形式地址 A 可變可變8. 變址尋址變址尋址EA = ( IX ) +AOPA操作數(shù)操作數(shù)主存主存尋址特征尋址特征ALUIX 可擴大尋址范圍可擴大尋址范圍 便于處理數(shù)組問題便于處理

57、數(shù)組問題 IX 的內(nèi)容由用戶給定的內(nèi)容由用戶給定 IX 為變址寄存器(專用)為變址寄存器(專用) 在程序的執(zhí)行過程中在程序的執(zhí)行過程中 IX 內(nèi)容可變,形式地址內(nèi)容可變,形式地址 A 不變不變通用寄存器也可以作為變址寄存器通用寄存器也可以作為變址寄存器例例 設(shè)數(shù)據(jù)塊首地址為設(shè)數(shù)據(jù)塊首地址為 D,求求 N 個數(shù)的平均值個數(shù)的平均值直接尋址直接尋址變址尋址變址尋址LDA DADD D + 1ADD D + 2ADD D + ( N -1 )DIV # NSTA ANSLDA # 0LDX # 0INXCPX # NBNE MDIV # NSTA ANS共共 N + 2 條指令條指令共共 8 條指令

58、條指令A(yù)DD X, DMX 為變址寄存器為變址寄存器D 為形式地址為形式地址(X) 和和 #N 比較比較(X) +1 X結(jié)果不為零則轉(zhuǎn)結(jié)果不為零則轉(zhuǎn)9. 相對尋址相對尋址 EA = ( PC ) + AA 是相對于當(dāng)前指令的位移量(可正可負(fù),補碼)是相對于當(dāng)前指令的位移量(可正可負(fù),補碼) A 的位數(shù)決定操作數(shù)的尋址范圍的位數(shù)決定操作數(shù)的尋址范圍 程序浮動程序浮動 廣泛用于轉(zhuǎn)移指令廣泛用于轉(zhuǎn)移指令操作數(shù)操作數(shù)尋址特征尋址特征ALUOPA相對距離相對距離 A1000PC 主存主存1000AOP (1) 相對尋址舉例相對尋址舉例M 隨程序所在存儲空間的位置不同而不同隨程序所在存儲空間的位置不同而不

59、同EA = ( M+3 ) 3 = M 3*LDA # 0LDX # 0ADD X, DINXCPX # NBNE MDIV # NSTA ANSMM+1M+2M+3而指令而指令 BNE 與與 指令指令 ADD X, D 相對位移量不變相對位移量不變 3* 指令指令 BNE操作數(shù)的有效地址為操作數(shù)的有效地址為 3* 相對尋址特征相對尋址特征*10. 堆棧尋址堆棧尋址(1) 堆棧的特點堆棧的特點堆棧堆棧硬堆棧硬堆棧軟堆棧軟堆棧多個寄存器多個寄存器指定的存儲空間指定的存儲空間先進(jìn)后出先進(jìn)后出(一個入出口)(一個入出口) 棧頂?shù)刂窏m數(shù)刂?由由 SP 指出指出 11FFFH +12000 H進(jìn)棧進(jìn)棧

60、 (SP) 1 SP出棧出棧 (SP)+ 1 SP棧頂棧頂棧底棧底2000 HSP2000 H1FFF HSP1FFFH棧頂棧頂棧底棧底進(jìn)棧進(jìn)棧出棧出棧 1FFF H棧頂棧頂 2000 H棧頂棧頂(2) 堆棧尋址舉例堆棧尋址舉例15200HACCSPX棧頂棧頂200H棧底棧底主存主存151FFHACCSP15棧頂棧頂200H棧底棧底主存主存X1FFHPUSH A 前前PUSH A 后后POP A 前前POP A 后后Y1FFHACCSPX棧頂棧頂200H棧底棧底主存主存151FFH15200HACCSP棧頂棧頂200H棧底棧底主存主存X15(3) SP 的修改與主存編址方法有關(guān)的修改與主存編址方法有關(guān) 按按 字字 編址編址進(jìn)棧進(jìn)棧出棧出棧(SP

溫馨提示

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

評論

0/150

提交評論