




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、主要內容第第2章章 數(shù)據(jù)操控數(shù)據(jù)操控 計算機體系結構計算機體系結構 機器語言機器語言 程序的執(zhí)行程序的執(zhí)行 算術算術/ /邏輯指令邏輯指令 與其他設備的通信與其他設備的通信 其他體系結構其他體系結構計算機體系結構l 計算機中實現(xiàn)計算機中實現(xiàn)控制數(shù)據(jù)操控控制數(shù)據(jù)操控的電路,是作為計算機的一個獨的電路,是作為計算機的一個獨立的部分存在的,稱為立的部分存在的,稱為中央處理器(中央處理器(CPUCPU)。l 早期的早期的CPUCPU體積龐大,今天的體積龐大,今天的CPUCPU體積很小、集成度高。體積很小、集成度高。計算機體系結構CPUCPU的外部特征,以及在計算機中的物理位置的外部特征,以及在計算機中
2、的物理位置CPU主板主板計算機體系結構CPUCPU的組成的組成l 算術算術/ /邏輯單元(邏輯單元(arithmetic/logic unitarithmetic/logic unit) ALUALU實現(xiàn)數(shù)據(jù)操作的電路,包括算術運算和布爾運算實現(xiàn)數(shù)據(jù)操作的電路,包括算術運算和布爾運算l 控制單元(控制單元(control unitcontrol unit) CUCU協(xié)調計算機活動的電路,包括:發(fā)出運算指令,操作數(shù)的讀取等。協(xié)調計算機活動的電路,包括:發(fā)出運算指令,操作數(shù)的讀取等。l 寄存器單元(寄存器單元(registerregister) 通用寄存器通用寄存器(general-purpose
3、 registergeneral-purpose register) 臨時保存臨時保存CPUCPU正在操作的數(shù)據(jù)。即:保存正在操作的數(shù)據(jù)。即:保存ALUALU電路的輸入和運算的電路的輸入和運算的結果。結果。 專用寄存器專用寄存器(special-purpose registerspecial-purpose register) 程序計數(shù)器、指令寄存器程序計數(shù)器、指令寄存器計算機體系結構CPUCPU的工作原理的工作原理寄存器寄存器中央處理器中央處理器 CPU主存儲器主存儲器算術算術/邏邏輯單元輯單元控制控制單元單元總線總線CPU和主存儲器通過和主存儲器通過總線總線(BUS)連接連接 CPU和主存
4、儲器之間通常設置了和主存儲器之間通常設置了高速緩沖存儲器高速緩沖存儲器(cache memory)各類存儲器的分工各類存儲器的分工:P54步驟1:從主存儲器中取出一個要加的數(shù)放入一個寄存器中。步驟2:從主存儲器中取出另一個要加的數(shù)放入另一個寄存器中。步驟3:激活加法電路,以步驟1、2所用的寄存器為輸入,用另一個寄存器存放相加結果步驟4:將該結果存入主存儲器。步驟5:停止。RAM計算機體系結構存儲程序的概念存儲程序的概念l把計算機程序存放到主存儲器里的思想把計算機程序存放到主存儲器里的思想-存儲程序概念存儲程序概念l早期的計算機早期的計算機舉例:類似舉例:類似“音樂盒音樂盒”那時,要改變計算機執(zhí)
5、行的程序,等于重新制造一臺計算機那時,要改變計算機執(zhí)行的程序,等于重新制造一臺計算機l后來,人們認識到程序可以像數(shù)據(jù)一樣進行編碼,并存放到存儲器中。后來,人們認識到程序可以像數(shù)據(jù)一樣進行編碼,并存放到存儲器中。這樣同一臺計算機,可以執(zhí)行很多種程序,而不需要改動計算機的硬件。這樣同一臺計算機,可以執(zhí)行很多種程序,而不需要改動計算機的硬件。計算機體系結構 l中央處理器(中央處理器(Central Processing UnitCentral Processing Unit,CPUCPU) 算術算術/ /邏輯部件(邏輯部件(arithmetic/logic unitarithmetic/logic
6、unit) 控制部件(控制部件(control unitcontrol unit) 寄存器(寄存器(registerregister)l通用寄存器(通用寄存器(general-purpose registergeneral-purpose register)l專用寄存器(專用寄存器(special-purpose registerspecial-purpose register)l主板(主板(motherboardmotherboard)l總線(總線(busbus)l高速緩沖存儲器(高速緩沖存儲器(cache memorycache memory)本節(jié)涉及到的概念本節(jié)涉及到的概念計算機體系結構
7、P P5454 問題與練習問題與練習機器語言l 機器語言(機器語言(machine languagemachine language)CPUCPU能辨認的能辨認的二進制模式二進制模式編碼的指令和編碼系統(tǒng)統(tǒng)稱為機器語言編碼的指令和編碼系統(tǒng)統(tǒng)稱為機器語言l 機器指令(機器指令(machine instructionmachine instruction)用機器語言表達的指令稱為用機器語言表達的指令稱為機器指令機器指令 ? ?問題:現(xiàn)在常用的一些程序設計語言,例如問題:現(xiàn)在常用的一些程序設計語言,例如C C、JavaJava、C+C+等和機器語言有什么關系?等和機器語言有什么關系?-編譯編譯1. 1
8、. 指令系統(tǒng)指令系統(tǒng)l問題:計算機的指令是不是越多越好?一臺計算機的問題:計算機的指令是不是越多越好?一臺計算機的CPUCPU究竟應該包究竟應該包含多少條指令才比較合適?含多少條指令才比較合適?l一旦一臺計算機能夠實現(xiàn)幾個經(jīng)過精心挑選的任務,那么添加更多一旦一臺計算機能夠實現(xiàn)幾個經(jīng)過精心挑選的任務,那么添加更多的特性是不會增加該計算機的理論能力的。的特性是不會增加該計算機的理論能力的。l換句話說,超越某一點后,附加的特性只能增加便利性,不會增加換句話說,超越某一點后,附加的特性只能增加便利性,不會增加該計算機的基本能力。該計算機的基本能力。機器語言 例:計算機例:計算機A:+、-、*、/ 計算
9、機計算機B:+、-、*、/、平方、開方、立方等、平方、開方、立方等1. 1. 指令系統(tǒng)指令系統(tǒng)l利用以上原則的不同程度,導致出現(xiàn)了兩種利用以上原則的不同程度,導致出現(xiàn)了兩種CPUCPU的體系結構(兩種指的體系結構(兩種指令系統(tǒng)):令系統(tǒng)):精簡指令集計算機(精簡指令集計算機(RISCRISC):): CPU CPU只需要執(zhí)行最小的機器指令集。只需要執(zhí)行最小的機器指令集。復雜指令集計算機(復雜指令集計算機(CISCCISC):): CPU CPU能夠執(zhí)行大量復雜的指令。能夠執(zhí)行大量復雜的指令。 Intel Intel公司生產的公司生產的CPUCPU是是CISCCISC結構的,而結構的,而IBM
10、PowerPCIBM PowerPC是是RISCRISC結結構的。構的。機器語言 機器語言1. 1. 指令系統(tǒng)指令系統(tǒng)指令分成指令分成3 3大類:大類:l數(shù)據(jù)傳輸類數(shù)據(jù)傳輸類l算術算術/ /邏輯運算類邏輯運算類l控制類控制類寄存器寄存器中央處理器中央處理器主存儲器主存儲器算術算術/邏邏輯部件輯部件控制部件控制部件總線總線CPU和主存儲器通過總線連接和主存儲器通過總線連接 機器語言步驟1:從主存儲器中取出一個要加的數(shù)放入一個寄存器中。步驟2:從主存儲器中取出另一個要加的數(shù)放入另一個寄存器中。步驟3:激活加法電路,以步驟1、2所用的寄存器為輸入,用另一個寄存器存放相加結果步驟4:將該結果存入主存儲
11、器。步驟5:停止。1. 1. 指令系統(tǒng)指令系統(tǒng)數(shù)據(jù)傳輸數(shù)據(jù)傳輸指令:指令:l請求在各個位置之間傳輸數(shù)據(jù)的指令請求在各個位置之間傳輸數(shù)據(jù)的指令l右圖中步驟右圖中步驟1 1、2 2、4 4屬于傳輸指令屬于傳輸指令注意:注意:l這里的這里的“傳輸傳輸”實際上指的是實際上指的是“復制復制”,通常不用,通常不用“movemove”或或“transfertransfer”l術語術語“LOADLOAD”、“STORESTORE”通常用來指通常用來指在在CPUCPU和主存儲器之間和主存儲器之間傳輸數(shù)據(jù)。傳輸數(shù)據(jù)。lI/OI/O指令指令是一類特殊的數(shù)據(jù)傳輸指令,單獨列為一類。指是一類特殊的數(shù)據(jù)傳輸指令,單獨列為
12、一類。指在在CPUCPU和其它設備和其它設備間傳輸數(shù)據(jù)。間傳輸數(shù)據(jù)。機器語言1. 1. 指令系統(tǒng)指令系統(tǒng)算術算術/ /邏輯運算指令:邏輯運算指令:l負責數(shù)據(jù)的運算負責數(shù)據(jù)的運算,即告訴控制部件請求在,即告訴控制部件請求在算術算術/ /邏輯部件內實現(xiàn)一個活動邏輯部件內實現(xiàn)一個活動l右圖中步驟右圖中步驟3 3屬于算術屬于算術/ /邏輯運算指令邏輯運算指令注意:注意:l邏輯運算邏輯運算ANDAND、OROR、NOTNOT、XORXOR通常是基于通常是基于位位的運算。的運算。因此邏輯運算指令可以完成對某一個寄存器中特定的若干位操作,而對其他位因此邏輯運算指令可以完成對某一個寄存器中特定的若干位操作,而
13、對其他位沒有影響沒有影響-掩碼掩碼l除邏輯運算,還有一類對寄存器內容左右移動的運算除邏輯運算,還有一類對寄存器內容左右移動的運算: :移位運算移位運算(SHIFT)(SHIFT)、循環(huán)移位運算(循環(huán)移位運算(ROTATEROTATE)。步驟1:從存儲器中取出一個要加的數(shù)放入一個寄存器中。步驟2:從存儲器中取出另一個要加的數(shù)放入另一個寄存器中。步驟3:激活加法電路,以步驟1、2所用的寄存器為輸入,用另一個寄存器存放相加結果步驟4:將該結果存存儲器。步驟5:停止。機器語言1. 1. 指令系統(tǒng)指令系統(tǒng)控制指令:控制指令:l指導程序執(zhí)行的指令,而不作數(shù)據(jù)操作指導程序執(zhí)行的指令,而不作數(shù)據(jù)操作l右圖中步
14、驟右圖中步驟5 5屬于控制指令屬于控制指令注意:注意:l常見的控制指令:轉移(常見的控制指令:轉移(JUMPJUMP)、分支()、分支(BRANCHBRANCH)l轉移有兩種形式:轉移有兩種形式:無條件轉移無條件轉移有條件轉移有條件轉移,例如:,例如:P56P56,圖,圖2.32.3的步驟的步驟3 3步驟1:從存儲器中取出一個要加的數(shù)放入一個寄存器中。步驟2:從存儲器中取出令一個要加的數(shù)放入另一個寄存器中。步驟3:激活加法電路,以步驟1、2所用的寄存器為輸入,用另一個寄存器存放相加結果步驟4:將該結果存存儲器。步驟5:停止。一個演示用的機器語言1.1.機器的體系結構機器的體系結構 機器有機器有
15、1616個通用寄存器個通用寄存器。每個寄存器的長度為一字節(jié)(每個寄存器的長度為一字節(jié)(8 8位)。位)。為了在為了在指令中標識寄存器,每個寄存器各賦予一個惟一的四位模式表示其寄存器號。指令中標識寄存器,每個寄存器各賦予一個惟一的四位模式表示其寄存器號。所以寄存器所以寄存器0 0由由00000000(十六進制(十六進制0 0)標識,寄存器)標識,寄存器4 4由由01000100(十六進制(十六進制4 4)標識。)標識。 機器主存有機器主存有256256個單元個單元。每個單元賦予一個范圍在。每個單元賦予一個范圍在0 0到到255255之間的整數(shù)地之間的整數(shù)地址。所以一個地址能夠用址。所以一個地址能
16、夠用0000000000000000到到1111111111111111范圍內(或范圍內(或0000到到FFFF范圍的十六范圍的十六進制值)的一個八位模式來表示。進制值)的一個八位模式來表示。一個演示用的機器語言2. 2. 示例性的機器語言示例性的機器語言 附錄附錄算術算術/ /邏輯部件邏輯部件中央處理器中央處理器寄存器寄存器012F總線總線主存儲器主存儲器地址地址單元單元00000101020203030404FFFF控制部件控制部件程序計數(shù)器程序計數(shù)器指令寄存器指令寄存器(1)共有)共有16個通用寄存器,個通用寄存器,256個主存儲單元。個主存儲單元。(2)分別用二進制編號,用十六進制表示
17、。)分別用二進制編號,用十六進制表示。一個演示用的機器語言2. 2. 示例性的機器語言示例性的機器語言指令及其構成:指令及其構成:l該計算機的每一條指令都是一個二進制序列;該計算機的每一條指令都是一個二進制序列;l這個二進制序列可被分為兩部分:這個二進制序列可被分為兩部分:操作碼、操作數(shù)操作碼、操作數(shù)l操作碼指名該指令將進行什么操作操作碼指名該指令將進行什么操作,例如:,例如:STORESTORE、ADDADD、XORXOR等等l操作數(shù)給出了參與本次運算的更詳細的信息操作數(shù)給出了參與本次運算的更詳細的信息。操作碼操作碼操作數(shù)操作數(shù)一條指令的組成一條指令的組成一個演示用的機器語言2. 2. 示例
18、性的機器語言示例性的機器語言l ? ?問題:在實際的計算機指令集中,操作碼占幾位取決于什么?問題:在實際的計算機指令集中,操作碼占幾位取決于什么?l對應著每一種操作碼的位模式,操作數(shù)都有不同的解釋。對應著每一種操作碼的位模式,操作數(shù)都有不同的解釋。操作碼操作碼操作數(shù)操作數(shù)實際的位模式(實際的位模式(16位)位)十六進制形式(十六進制形式(4個數(shù)字)個數(shù)字)一條指令的組成一條指令的組成一個演示用的機器語言2. 2. 示例性的機器語言示例性的機器語言l在我們的在我們的示例計算機中,機器語言一共有示例計算機中,機器語言一共有1212條基本指令條基本指令;因此,操;因此,操作碼需占作碼需占4 4位。位
19、。l總的機器指令都是兩字節(jié)長。頭總的機器指令都是兩字節(jié)長。頭4 4位是操作碼,后位是操作碼,后1212位組成操作數(shù)字位組成操作數(shù)字段。段。l1212位組成操作數(shù)位組成操作數(shù)由三個十六進制數(shù)表示,分別代表不同的含義。由三個十六進制數(shù)表示,分別代表不同的含義。l詳見附錄詳見附錄C C一個簡單的機器語言 說明:說明:l 字母字母R R、S S及及T T在表示寄存器標識符的那些字段處用來替代十六進制數(shù)字,在表示寄存器標識符的那些字段處用來替代十六進制數(shù)字, R R、S S、T T代表的是寄存器的地址代表的是寄存器的地址 它們因指令的具體應用而異。它們因指令的具體應用而異。l 字母字母X X及及Y Y用
20、來在變量字段替代十六進制數(shù)字,而用來在變量字段替代十六進制數(shù)字,而不代表寄存器不代表寄存器。一個簡單的機器語言操作碼操作碼操作數(shù)操作數(shù)說明說明1RXY以地址為以地址為XY的存儲單元的位模式加載(的存儲單元的位模式加載(LOAD)寄存器)寄存器R。例:例:14A3使得地址使得地址A3的存儲單元內容放入寄存器的存儲單元內容放入寄存器4。2RXY以位模式以位模式XY 加載(加載(LOAD)寄存器)寄存器R。例:例:20A3使得值使得值A3放入寄存器放入寄存器0。3RXY將寄存器將寄存器R的位模式存放(的位模式存放(STORE)于地址為)于地址為XY的存儲單元。的存儲單元。例:例:35B1使得寄存器使
21、得寄存器5的內容放入地址為的內容放入地址為B1的存儲單元。的存儲單元。4ORS將寄存器將寄存器R的位模式移入(的位模式移入(MOVE)寄存器)寄存器S。例:例:40A4使得寄存器使得寄存器A的內容復制到寄存器的內容復制到寄存器4。5RST寄存器寄存器S與寄存器與寄存器T的位模式作為補碼表示相加(的位模式作為補碼表示相加(ADD),求和結果),求和結果放在寄存器放在寄存器R。例:例:5726使得寄存器使得寄存器2與寄存器與寄存器6的二進制值相加,和放入寄存器的二進制值相加,和放入寄存器7。6RST寄存器寄存器S與寄存器與寄存器T的位模式作為浮點表示值相加(的位模式作為浮點表示值相加(ADD),浮
22、點結),浮點結果放在寄存器果放在寄存器R。例:例:634E使寄存器使寄存器4與寄存器與寄存器E的浮點值相加,結果放入寄存器的浮點值相加,結果放入寄存器3。一個簡單的機器語言操作碼操作碼操作數(shù)操作數(shù)說明說明7RST寄存器寄存器S與寄存器與寄存器T的位模式做或(的位模式做或(OR)操作,結果放在寄)操作,結果放在寄存器存器R。例:例:7CB4使得寄存器使得寄存器B與寄存器與寄存器4的內容做或操作,結果放的內容做或操作,結果放入寄存器入寄存器C。8RST寄存器寄存器S與寄存器與寄存器T的位模式做與(的位模式做與(AND)操作,結果放在寄)操作,結果放在寄存器存器R。例:例:8045使得寄存器使得寄存
23、器4與寄存器與寄存器5的內容做與操作,結果放入的內容做與操作,結果放入寄存器寄存器0。9RST寄存器寄存器S與寄存器與寄存器T的位模式做異或(的位模式做異或(EXCLUSIVE OR)操)操作,結果放在寄存器作,結果放在寄存器R。例:例:95F3使得寄存器使得寄存器F與寄存器與寄存器3的內容做異或操作,結果放的內容做異或操作,結果放入寄存器入寄存器5。一個簡單的機器語言操作碼操作碼操作數(shù)操作數(shù)說明說明AROX將寄存器將寄存器R的位模式循環(huán)(的位模式循環(huán)(ROTATE)右移一位,做)右移一位,做X次。次。每次把低端開始的那個位放入高端。每次把低端開始的那個位放入高端。例:例:A403使得寄存器使
24、得寄存器4的內容循環(huán)右移的內容循環(huán)右移3位。位。BRXY若寄存器若寄存器R的位模式等于寄存器的位模式等于寄存器0的位模式,則跳轉(的位模式,則跳轉(JUMP)到位于地址到位于地址XY的存儲單元中的指令。否則繼續(xù)正常執(zhí)行順序。的存儲單元中的指令。否則繼續(xù)正常執(zhí)行順序。(跳轉是通過在執(zhí)行周期將(跳轉是通過在執(zhí)行周期將XY復制進程序計數(shù)器來實現(xiàn)。)復制進程序計數(shù)器來實現(xiàn)。)例:例:B43C先比較寄存器先比較寄存器4及寄存器及寄存器0的內容。如果兩者相等,的內容。如果兩者相等,則把模式則把模式3C置入程序計數(shù)器,所以下一條執(zhí)行的指令將是這置入程序計數(shù)器,所以下一條執(zhí)行的指令將是這個存儲器地址中的那條。
25、否則,不做任何別的事情,程序照個存儲器地址中的那條。否則,不做任何別的事情,程序照常繼續(xù)。常繼續(xù)。C000停止(停止(HALT)執(zhí)行。)執(zhí)行。例:例:C000使得程序執(zhí)行停止。使得程序執(zhí)行停止。機器語言運算對象的這運算對象的這部分標識接收部分標識接收數(shù)據(jù)的存儲器數(shù)據(jù)的存儲器單元的地址單元的地址運算對象的這部分標運算對象的這部分標識哪個寄存器的值需識哪個寄存器的值需要儲存要儲存運算碼運算碼3表示把表示把一個寄存器中的一個寄存器中的內容存儲到一個內容存儲到一個存儲器單元中存儲器單元中指令指令指令指令35A7的譯碼的譯碼 2. 2. 示例性的機器語言示例性的機器語言機器指令的譯碼(解碼):機器指令的
26、譯碼(解碼):機器語言2. 2. 示例性的機器語言示例性的機器語言根據(jù)附錄根據(jù)附錄C C,解釋下列指令序列的含義:,解釋下列指令序列的含義:l156C156Cl166D166Dl50565056l306E306ElC000C000機器語言P P5858 問題與練習問題與練習程序執(zhí)行l(wèi)程序:指令的有序集合程序:指令的有序集合 l計算機必須將程序復制到計算機必須將程序復制到CPUCPU中才能執(zhí)行。即在中才能執(zhí)行。即在CPUCPU中解碼和執(zhí)行。中解碼和執(zhí)行。l程序的執(zhí)行順序和他們在存儲器中保存的順序是一致的,除非程序程序的執(zhí)行順序和他們在存儲器中保存的順序是一致的,除非程序中包含中包含JUMPJUM
27、P指令。指令?,F(xiàn)實中:現(xiàn)實中:程序被存放在硬盤中,當執(zhí)行時,先被加載到內存里,然后再一條程序被存放在硬盤中,當執(zhí)行時,先被加載到內存里,然后再一條條的復制到條的復制到CPUCPU的控制器中執(zhí)行。的控制器中執(zhí)行。程序執(zhí)行控制部件中的兩個控制部件中的兩個專用寄存器專用寄存器:l程序計數(shù)器程序計數(shù)器程序計數(shù)器中包含了程序計數(shù)器中包含了下一條要執(zhí)行的指令的地址要執(zhí)行的指令的地址l指令寄存器指令寄存器指令寄存器用于保存指令寄存器用于保存當前正在執(zhí)行的指令執(zhí)行的指令算術算術/ /邏輯部件邏輯部件中央處理器中央處理器寄存器寄存器012F總線總線主存儲器主存儲器地址地址單元單元0000010102020303
28、0404FFFF控制部件控制部件程序計數(shù)器程序計數(shù)器指令寄存器指令寄存器程序執(zhí)行l(wèi)從整體上看,由控制部件負責協(xié)調一個程序的執(zhí)行。對于程序中的從整體上看,由控制部件負責協(xié)調一個程序的執(zhí)行。對于程序中的每一條指令的執(zhí)行,控制部件要完成的工作都可以被分為三個基本每一條指令的執(zhí)行,控制部件要完成的工作都可以被分為三個基本的步驟。的步驟。取指令取指令譯碼譯碼執(zhí)行執(zhí)行l(wèi)控制部件是通過重復執(zhí)行一個算法來實現(xiàn)它的工作的,該算法引導控制部件是通過重復執(zhí)行一個算法來實現(xiàn)它的工作的,該算法引導它完成一個稱為它完成一個稱為機器周期機器周期的三步處理。的三步處理。l一條指令的執(zhí)行時間一條指令的執(zhí)行時間 - - 一個機器
29、周期一個機器周期1個機器周期內的工作程序執(zhí)行機器周期內執(zhí)行一條指令的算法機器周期內執(zhí)行一條指令的算法1. 按程序計數(shù)按程序計數(shù)器指示的地址器指示的地址從存儲器中讀從存儲器中讀出一條指令,出一條指令,然后增加程序然后增加程序計數(shù)器的值。計數(shù)器的值。2. 對指令寄對指令寄存器中的位存器中的位模式進行譯模式進行譯碼。碼。3. 實現(xiàn)指令寄存器里實現(xiàn)指令寄存器里指令所規(guī)定的動作。指令所規(guī)定的動作。讀讀取取執(zhí)行執(zhí)行譯碼譯碼在我們的示例計算機中,計數(shù)器的值應該加2程序執(zhí)行 運算對象運算對象的這部分的這部分是要放在是要放在程序計數(shù)程序計數(shù)器的值。器的值。運算對象的這部分指運算對象的這部分指示要與寄存器示要與寄
30、存器0比較比較的寄存器。的寄存器。運算碼運算碼B表示,表示,如果指定的寄存如果指定的寄存器的內容與寄存器的內容與寄存器器0的內容相同,的內容相同,那么改變程序計那么改變程序計數(shù)器的值。數(shù)器的值。指指令令轉移指令的執(zhí)行比較特殊,例如:指令轉移指令的執(zhí)行比較特殊,例如:指令B258B258的譯碼的譯碼 1、轉移指令需用到指令規(guī)定的運算對象之外的寄存器、轉移指令需用到指令規(guī)定的運算對象之外的寄存器2、轉移指令是唯一能夠改變程序計數(shù)器的值的指令、轉移指令是唯一能夠改變程序計數(shù)器的值的指令程序執(zhí)行 1. 1. 程序執(zhí)行的一個例子程序執(zhí)行的一個例子l156C156Cl166D166Dl50565056l3
31、06E306ElC000C000假定該程序存放在從假定該程序存放在從地址地址A0A0開始的連續(xù)的開始的連續(xù)的地址里地址里程序執(zhí)行1. 1. 程序執(zhí)行的一個例子程序執(zhí)行的一個例子程序的執(zhí)行1. 1. 程序執(zhí)行的一個例子程序執(zhí)行的一個例子程序的執(zhí)行1. 1. 程序執(zhí)行的一個例子程序執(zhí)行的一個例子l156C156Cl166D166Dl50565056l306E306ElC000C000? ?程序存放在程序存放在A0-A9A0-A9,它所操作的數(shù)據(jù)它所操作的數(shù)據(jù)放在哪里?放在哪里?程序的執(zhí)行2 2. . 程序程序與數(shù)據(jù)與數(shù)據(jù)l 程序和數(shù)據(jù)都存放在主存儲器中程序和數(shù)據(jù)都存放在主存儲器中,機器本身不知道哪
32、里是程序,機器本身不知道哪里是程序,哪里是數(shù)據(jù)。哪里是數(shù)據(jù)。l 如果錯誤的把一段數(shù)據(jù)的起始地址填寫到程序計數(shù)器中,控制如果錯誤的把一段數(shù)據(jù)的起始地址填寫到程序計數(shù)器中,控制部件將會把這段數(shù)據(jù)當作程序去執(zhí)行。部件將會把這段數(shù)據(jù)當作程序去執(zhí)行。 程序和數(shù)據(jù)同時存放在存儲器中的優(yōu)點:程序和數(shù)據(jù)同時存放在存儲器中的優(yōu)點:l 一個程序可以操作自身,使之具有學習的能力。一個程序可以操作自身,使之具有學習的能力。l 一個程序也可以把其它的程序當作數(shù)據(jù)操作。一個程序也可以把其它的程序當作數(shù)據(jù)操作。程序的執(zhí)行P P6262 問題與練習問題與練習算術/邏輯指令 循環(huán)移位和移位運算循環(huán)移位和移位運算l 循環(huán)移位循環(huán)
33、移位(circular shiftcircular shift或或rotationrotation)l 邏輯移位邏輯移位(logical shiftlogical shift)l 算術移位算術移位(arithmetic shiftarithmetic shift)位模式位模式A3循環(huán)右移循環(huán)右移1位位 由由A3(十六進制)(十六進制)表示的位模式表示的位模式各位向右移各位向右移1位。位。最右面的位最右面的位“移出移出”了,把它填在另一了,把它填在另一端的空位上端的空位上最后的位模式,它最后的位模式,它用用D1(十六進制)(十六進制)表示表示與其他設備的通信l CPUCPU與主存儲器組成了一個計
34、算機的與主存儲器組成了一個計算機的核心核心 在這一節(jié)中,我們將稱這個核心為計算機在這一節(jié)中,我們將稱這個核心為計算機l 在本節(jié)中,我們將研究在本節(jié)中,我們將研究“計算機計算機”如何與外部設備通信的如何與外部設備通信的 例如:磁盤、打印機、鍵盤、鼠標、監(jiān)視器等例如:磁盤、打印機、鍵盤、鼠標、監(jiān)視器等與其他設備的通信1. 1. 控制器的作用控制器的作用 一臺一臺“計算機計算機”(核心)與其他設備之間的通信通常是由(核心)與其他設備之間的通信通常是由我們稱為控制器的中間設備處理的。我們稱為控制器的中間設備處理的。l 對于個人計算機來說,控制器就是一塊電路板,它是插在計對于個人計算機來說,控制器就是一
35、塊電路板,它是插在計算機的主板上的。算機的主板上的。l 每個控制器本身通常就是一個小的計算機,它有自己的存儲每個控制器本身通常就是一個小的計算機,它有自己的存儲電路和電路和CPUCPU。與其他設備的通信與其他設備的通信與其他設備的通信l 控制器把信息和數(shù)據(jù)在兩種形式之間轉換控制器把信息和數(shù)據(jù)在兩種形式之間轉換: 一是與計算機內部特征相適應的形式一是與計算機內部特征相適應的形式 二是與所連接的外部設備相適應的形式二是與所連接的外部設備相適應的形式l 每個控制器都是為特定類型的設備設計的,彼此不能通用。每個控制器都是為特定類型的設備設計的,彼此不能通用。 甚至是同一類型的兩個外部設備,它們彼此的控
36、制器也不相同。甚至是同一類型的兩個外部設備,它們彼此的控制器也不相同。例如:老式磁盤系統(tǒng)的控制器對新式硬盤就不適用。例如:老式磁盤系統(tǒng)的控制器對新式硬盤就不適用。與其他設備的通信 CPUCPU與控制器的種通信方式:與控制器的種通信方式:(1 1)端口端口 在某些計算機中,機器語言提供了在某些計算機中,機器語言提供了額外的運算碼額外的運算碼用于控用于控制器的制器的LOADLOAD和和STORE-STORE-這些運算碼我們稱之為這些運算碼我們稱之為I/OI/O指令。指令。 I/OI/O指令通過編址系統(tǒng)來標識各種各樣的控制器。指令通過編址系統(tǒng)來標識各種各樣的控制器。賦給賦給每個控制器一個唯一的地址,
37、我們稱為每個控制器一個唯一的地址,我們稱為I/OI/O地址,也叫做端地址,也叫做端口口與其他設備的通信 (2 2) 存儲器映射輸入存儲器映射輸入/ /輸出輸出在這種方式中,在這種方式中,CPUCPU使用與存儲器通信使用與存儲器通信相同的運算碼相同的運算碼來來和各種控制器通信和各種控制器通信 CPUCPU如何區(qū)分當前通信的對象是某個控制器還是主存如何區(qū)分當前通信的對象是某個控制器還是主存儲器呢?儲器呢? 每個控制器被設計成響應唯一的一組主存儲器的地址,每個控制器被設計成響應唯一的一組主存儲器的地址,而主存儲器被設計成忽略對這些地址的引用(而主存儲器被設計成忽略對這些地址的引用(即:主即:主存儲器
38、不能使用這些地址)。存儲器不能使用這些地址)。與其他設備的通信 存儲器映射輸入存儲器映射輸入/ /輸出輸出與其他設備的通信2.2.直接內存存取直接內存存取-DMA-DMA 控制器直接存取主存儲器的能力稱為控制器直接存取主存儲器的能力稱為-DMA-DMA 如圖如圖2.132.13中所示,控制器是連接在總線上的,當中所示,控制器是連接在總線上的,當CPUCPU不使不使用總線時,控制器可以利用總線與主存儲器通信。用總線時,控制器可以利用總線與主存儲器通信。 DMA DMA的好處在于,它大大提高了計算機的性能的好處在于,它大大提高了計算機的性能與其他設備的通信馮馮諾依曼瓶頸諾依曼瓶頸 位模式必須在位模
39、式必須在CPUCPU與主存儲器、與主存儲器、CPUCPU與控制器、各個控制器與控制器、各個控制器與主存儲器之間進行傳送。與主存儲器之間進行傳送。 協(xié)調總線上的數(shù)據(jù)傳輸就是一個重要的研究課題。協(xié)調總線上的數(shù)據(jù)傳輸就是一個重要的研究課題。 即使是杰出的設計,即使是杰出的設計,中央總線也可能成為中央總線也可能成為CPUCPU與控制器競爭與控制器競爭總線存取的障礙總線存取的障礙 這種障礙稱為這種障礙稱為 馮諾依曼瓶頸馮諾依曼瓶頸l DMA DMA的使用對于增加計算機總線所處理的通信量有決定性的影響。的使用對于增加計算機總線所處理的通信量有決定性的影響。與其他設備的通信3.3.握手握手l 在計算機兩個部
40、件之間的數(shù)據(jù)傳輸很少是單向的。在計算機兩個部件之間的數(shù)據(jù)傳輸很少是單向的。 例如:例如: 打印機打印機l 握手:計算機與外部設備之間交換設備狀態(tài)的信息,協(xié)調握手:計算機與外部設備之間交換設備狀態(tài)的信息,協(xié)調它們之間的活動的過程。它們之間的活動的過程。l 握手通常涉及一個握手通常涉及一個狀態(tài)字狀態(tài)字 狀態(tài)字是一個位模式狀態(tài)字是一個位模式,由外部設備生成并發(fā)送給控制器。,由外部設備生成并發(fā)送給控制器。它的各個二進制為反映了該設備的各種狀態(tài)。它的各個二進制為反映了該設備的各種狀態(tài)。與其他設備的通信l 4.4.流行的通信媒介流行的通信媒介 計算機設備間的通信的兩種方式:串行、并行計算機設備間的通信的兩
41、種方式:串行、并行 并行通信并行通信:若干信號同時傳輸,每個信號都在各自的:若干信號同時傳輸,每個信號都在各自的“線路線路”上。即:上。即:數(shù)據(jù)在多個信道上同時傳輸數(shù)據(jù)在多個信道上同時傳輸。數(shù)據(jù)線數(shù)目與傳輸數(shù)據(jù)相同。數(shù)據(jù)線數(shù)目與傳輸數(shù)據(jù)相同。速度快,但是鏈路復雜。如:計算機的內部總線。速度快,但是鏈路復雜。如:計算機的內部總線。 串行通信串行通信:指在一條信號線上一個信號節(jié)一個信號地傳輸。即:指在一條信號線上一個信號節(jié)一個信號地傳輸。即:數(shù)據(jù)數(shù)據(jù)在一個信道上一位一位依次傳輸在一個信道上一位一位依次傳輸。數(shù)據(jù)線數(shù)目與與傳輸數(shù)據(jù)無關。數(shù)據(jù)線數(shù)目與與傳輸數(shù)據(jù)無關。優(yōu)點是只需要一條相對簡單的數(shù)據(jù)路徑,
42、可以優(yōu)點是只需要一條相對簡單的數(shù)據(jù)路徑,可以在短距離內提供相對高速在短距離內提供相對高速的的數(shù)據(jù)傳輸。數(shù)據(jù)傳輸。與其他設備的通信串行通信并行通信與其他設備的通信流行的通信媒介流行的通信媒介 MODEMMODEM(調制解調器)(調制解調器) DSL DSL(數(shù)字用戶電路)(數(shù)字用戶電路) OPTICAL FIBRE OPTICAL FIBRE (光纖)(光纖) CATV(CATV(有線電視有線電視) ) WIRELESS COMMUNICATION WIRELESS COMMUNICATION (無線通信)(無線通信)與其他設備的通信 5. 5. 數(shù)據(jù)通信速率數(shù)據(jù)通信速率 傳輸數(shù)據(jù)位的速率是以每秒傳輸數(shù)據(jù)位的速率是以每秒比特比特數(shù)(數(shù)(bits per secondbits per second,bpsbps)度量的。度量
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 關系演化動態(tài)監(jiān)測-洞察及研究
- 2025年醫(yī)療器械經(jīng)營培訓試題(附答案)
- 2025年時事政治必考試題庫完整參考答案及答案詳解參考
- 物聯(lián)網(wǎng)感知數(shù)據(jù)的增強現(xiàn)實可視化-洞察及研究
- 2025c語言程序設計中職試題及答案
- 2025年石化初級工考試題庫
- 2025c語言程序設計第一章試題及答案
- 2025年抖音飛鴿考試試題及答案
- 2025年生產經(jīng)理考試題庫
- 2025年煤亮子考試題庫
- 教課版小學科學說課稿
- 合同變更品牌補充協(xié)議
- 食堂6T管理內容
- 智能財務導論 教學方案 陳俊
- 2025年各月計薪日明細
- 什么是個好醫(yī)護人員的職業(yè)素養(yǎng)
- 《中華人民共和國廣告法》修訂前后對照表
- 食材配送投標服務方案(餐飲行業(yè)投標文件)
- 2024年期貨從業(yè)資格題庫含完整答案(必刷)
- 器件應力降額及關鍵用法規(guī)范
- 餐飲技術入股合作協(xié)議書范本
評論
0/150
提交評論