版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第一章 系統給概論 習 題 一1.l 解釋下列名詞摩爾定律:對集成電路上可容納的晶體管數目、性能和價格等發(fā)展趨勢的預測,其主要內容是:成集電路上可容納的晶體管數量每18個月翻一番,性能將提高一倍,而其價格將降低一半。主存: 計算機中存放正在運行的程序和數據的存儲器,為計算機的主要工作存儲器,可隨機存取。 控制器:計算機的指揮中心,它使計算機各部件自動協調地工作。 時鐘周期:時鐘周期是時鐘頻率的倒數,也稱為節(jié)拍周期或T周期,是處理操作最基本的時間單位。 多核處理器:多核處理器是指在一枚處理器中集成兩個或多個完整的計算引擎(內核)。字長:運算器一次運算處理的二進制位數。 存儲容量: 存儲器中可存二
2、進制信息的總量。CPI:指執(zhí)行每條指令所需要的平均時鐘周期數。 MIPS:用每秒鐘執(zhí)行完成的指令數量作為衡量計算機性能的一個指標,該指標以每秒鐘完成的百萬指令數作為單位。 CPU時間:計算某個任務時CPU實際消耗的時間,也即CPU真正花費在某程序上的時間。 計算機系統的層次結構:計算機系統的層次結構由多級構成,一般分成5級,由低到高分別是:微程序設計級,機器語言級,操作系統級,匯編語言級,高級語言級。 基準測試程序:把應用程序中使用頻度最高的那那些核心程序作為評價計算機性能的標準程序。軟/硬件功能的等價性:從邏輯功能的角度來看,硬件和軟件在完成某項功能上是相同的,稱為軟/硬件功能是等價的,如浮
3、點運算既可以由軟件實現,也可以由專門的硬件實現。固件:是一種軟件的固化,其目的是為了加快軟件的執(zhí)行速度??煽啃裕嚎煽啃允侵赶到y或產品在規(guī)定的條件和規(guī)定的時間內,完成規(guī)定功能的能力。產品可靠性定義的要素是三個“規(guī)定”:“規(guī)定條件”、“規(guī)定時間”和“規(guī)定功能”。 MTTF:平均無故障時間,指系統自使用以來到第一次出故障的時間間隔的期望值。 MTTR:系統的平均修復時間。 MTBF:平均故障間隔時間,指相鄰兩次故障之間的平均工作時間。 可用性:指系統在任意時刻可使用的概率,可根據MTTF、MTTR和MTBF等指標計算處系統的可用性。 1.2 什么是計算機系統的硬件和軟件?為什么說計算機系統的硬件和軟
4、件在邏輯功能上是等價的?答:計算機硬件系統是指構成計算機系統的電子線路和電子元件等物理設備的總稱。硬件是構成計算機的物質基礎,是計算機系統的核心。計算機的硬件系統包含運算器、控制器、存儲器、輸入設備和輸出設備等五大部件。計算機軟件是計算機中全部程序的集合。軟件按其功能分成應用軟件和系統軟件兩大類。計算機硬件實現的往往是最基本的算術運算和邏輯運算功能,而其它功能大多是通過軟件的擴充得以實現的。有許多功能可以由硬件實現,也可以由軟件實現,即從用戶的角度來看它們在功能上是等價的,這一等價性被稱為軟/硬件邏輯功能的等價性。1.3 馮·諾依曼型計算機的基本思想是什么?按此思想設計的計算機硬件系
5、統應由哪些部件組成?各起什么作用?答:馮諾依曼型計算機的基本思想是存儲程序和程序控制,其中的“存儲程序”是指將解題的步驟編寫成程序,然后把存儲存放到計算機的內存中,而“程序控制”是指控制器讀出存放在存儲器中的程序并根據該程序控制全機協調工作以完成程序的功能。 根據馮諾依曼型計算機的基本思想,計算機的硬件應該由運算器、控制器、存儲器、輸入/輸出設備和總線組成。各部件的作用:運算器:對數據進行運算的部件。 存儲器:存放程序和數據。 控制器:根據指令的功能控制構成計算機的各大功能部件協調工作,共同完成指令的功能。 輸入設備:將外部信息輸送到主機內部的設備。 輸出設備:能將計算機內部的信息以不同并且相
6、應的形式反饋給人們的設備。總線:連接兩個或多個設備(部件)的公共信息通路。1.4 什么是計算機字長?它取決于什么?計算機字長統一了哪些部件的長度?答:計算機的字長一般指一次參與運算數據的基本長度,用二進制數位的長度來衡量。它取決于運算器一次運算處理的二進制位數。它是計算機的重要性能指標。常用的計算機字長有8位、16位、32位及64位。一般與計算機內部寄存器、加法器、數據總線的位數以及存儲器字長等長,因此,字長直接影響硬件的代價。1.5 計算機系統從功能上可劃分為哪些層次?各層次在計算機系統中起什么作用?答:計算機系統分成五級層次結構,第1級為微程序設計級、第2級為機器語言級、第3級為操作系統級
7、、第4級為匯編語言級、第5級為高級語言級。各層次的作用:微程序級:為機器指令級提供機器指令的解釋指行功能。 機器指令級:是軟件系統和硬件系統的界面,一條機器指令的功能由微程序機器級的一段微型程序的功能實現。 操作系統級:調度計算機中的軟件和硬件資源。 匯編語言級:它將用戶編寫的接近人類語言的程序,翻譯成能在機器上運行的目標程序。高級語言級:完全面向用戶,是用戶關心的目標,可執(zhí)行各種用途的程序。1.6 計算機內部有哪兩股信息在流動?它們彼此有什么關系?答:計算機中有兩股信息在流動:一股是控制信息,即操作命令,它分散流向各個部件;一股是數據信息,它受控制信息的控制,從一個部件流向另一個部件,在流動
8、的過程被相應的部件加工處理。1.7 為什么說計算機系統的軟件與硬件可以互相轉化?答:計算機硬件實現的往往是最基本的算術運算和邏輯運算功能,而其它功能大多是通過軟件的擴充得以實現的。有許多功能可以由硬件實現,也可以由軟件實現,即從用戶的角度來看它們在功能上是等價的,這一等價性被稱為軟/硬件邏輯功能的等價性。由于這樣的等價性,所以可以說計算機系統的軟件與硬件是可以互相轉化的。1.8 什么叫軟件系統?它包含哪些內容?答:一臺計算機中全部程序的集合,統稱為這臺計算機的軟件系統。軟件按其功能分成應用軟件和系統軟件兩大類。應用軟件是用戶為解決某種應用問題而編制的一些程序。系統軟件用于對計算機系統的管理、調
9、度、監(jiān)視和服務等功能,常將系統軟件分為以下六類:操作系統,言處理程序,標準程序庫,服務性程序,數據庫管理系統和算機網絡軟件。1.9 說明高級語言、匯編語言和機器語言三者之間的差別和聯系。答:機器語言是直接用二進制代碼指令表達的計算機語言,是一種面向機器的編程語言,屬于低級語言。匯編語言是用助記符號來表示計算機指令的語言,也是低級的語言。高級語言是一類接近于人類自然語言和數學語言的程序設計語言的統稱,分為面向過程的語言和面向對象的語言。它們都是計算機的編程語言,并且是計算機編程語言發(fā)展的三個階段。三者各自的特點:使用機器語言編寫的程序,占用內存少、執(zhí)行效率高。缺點:編程工作量大,容易出錯;依賴具
10、體的計算機體系,因而程序的通用性、移植性都很差。使用匯編語言編寫計算機程序,能夠根據特定的應用對代碼做最佳的優(yōu)化,提高運行速度;能夠最大限度地發(fā)揮硬件的功能。但是編寫的代碼非常難懂,不好維護;開發(fā)效率很低,時間長且單調。高級語言的優(yōu)點是:編程相對簡單、直觀、易理解、不容易出錯;編寫的計算機程序通用性好,具有較好的移植性。1.10 什么是系統的可靠性?衡量系統可靠性的指標有哪些?如何提高系統的可靠性?答:系統的可靠性是指系統在規(guī)定的條件和規(guī)定的時間內,完成規(guī)定功能的能力。衡量系統可靠性的指標有三個:平均無故障時間、平均故障間隔時間和可用性。提高系統可靠性的常用方法包括避錯和容錯。前者即避免錯誤的
11、出現,從而提高系統的平均無故障時間;后者容許錯誤的出現,但采取有效的方法來防止其造成的不利影響。1.11 假定某計算機1和計算機2以不同的方式實現了相同的指令集,該指令集中共有A、B、C、D四類指令,它們在程序中所占比例分別為40%、20%、20%、20%,機器1和機器2的時鐘周期為600MHZ和800MHZ,各類指令在兩機器上的CPI如表1.5所示,求兩機器的MIPS各為多少?表1.5 兩臺計算機不同指令的CPI ABCDCPI12345CPI22234解:CPI1= 2*0.4+ 0.2*(3+4+5)= 3.2 MIPS1= f/(CPI1´106) = 600´10
12、6/(3.2´106)=187.5 CPI2= 2*0.4+ 0.2*(2+3+4)= 2.6 MIPS2= f/(CPI1´106) = 800´106/(2.6´106)=307.71.12 若某程序編譯后生成的目標代碼由A、B、C、D四類指令組成,它們在程序中所占比例分別為40%、20%、15%、25%。已知A、B、C、D四類指令的CPI分別為1、2、2、2?,F需要對程序進行編譯優(yōu)化,優(yōu)化后的程序中A類指令條數減少了一半,而其它指令數量未發(fā)生變化。假設運行該程序的計算機CPU主頻為500MHZ。完成下列各題:1)優(yōu)化前后程序的CPI各為多少?2)優(yōu)
13、化前后程序的MIPS各為多少?3)通過上面的計算結果你能得出什么結論?解:1)優(yōu)化前:CPI= = 1´ 0.4 + 2´ 0.2 + 2´ 0.15 + 2´ 0.25= 1.6優(yōu)化后:A、B、C、D四類指令在程序中所占比例分別為1/4、1/4、3/16、5/16, CPI= = 1´ 1/4 + 2´ 1/4 + 2´ 3/16 + 2´ 5/16= 1.752)根據 公式MIPS =得優(yōu)化前:MIPS = (500´106)/(1.6´106) = 312.5優(yōu)化后:MIPS = (500
14、´106)/(1.75´106) = 285.73)優(yōu)化后,A類指令條數減少,造成計算機的CPI增加,MIPS減少。這樣的優(yōu)化雖然減少了A類指令條數,卻降低了程序的執(zhí)行速度。第二章 數據表示方法 習 題 二2.1解釋下列名詞真值:正號和負號分別用“+”和“-”表示,數據位保持二進制值不變的數據表示方法。數值數據:計算機所支持的一種數據類型,用于科學計算,常見的數值數據類型包括小數、整數、浮點數數等。 非數值數據:計算機所支持的一種數據類型,一般用來表示符號或文字等沒有數值值的數據。 機器數:數據在機器中的表示形式,是正負符號數碼化后的二進制數據。 變形補碼:用兩個二進制位來
15、表示數字的符號位,其余與補碼相同。即“00”表示正,“11”表示負。 規(guī)格化:將非規(guī)格化的數處理成規(guī)格化數的過程。規(guī)格化數規(guī)定尾數用純小數表示,且真值表示時小數點后第一位不為0(以機器數表示時對小數點后第一位的規(guī)定與具體的機器數的形式有關)。 機器零:計算機保存數字的位有限,所能表示最小的數也有范圍,其中有一個范圍之中的數據無法精確表示,當實際的數據處在這個無法精確表示的數據范圍時計算機就將該數作為機器零來處理,因此,計算機中的機器零其實對應的不是一個固定的數,而是一個數據表示范圍。 BCD碼:用4位二進制數來表示1位十進制數中的09這10個數碼,即二進制表示的十進制數。 漢字內碼:計算機內部
16、存儲、處理加工和傳輸漢字時所用的由0和1符號組成的代碼。碼距:一組編碼中對應位上數字位不同的最小個數。 奇偶校驗:通過檢測校驗碼中1的個數的奇/偶性是否改變來判斷數據是否出錯的一種數據校驗方法。 海明校驗:是一種基于多重奇校驗且具有檢測與糾正錯誤的校驗方法。其基本原理是將有效信息按某種規(guī)律分成若干組,每組安排一個校驗位進行奇偶測試,就能提供多位檢錯信息,以指出最大可能是哪位出錯,從而將其糾正。循環(huán)冗余校驗:是數據通信領域中最常用的一種具有檢測與糾正錯誤能力差錯校驗碼,基利用生成多項式并基于模2運算建立編碼規(guī)則。檢錯:檢測被傳送的信息中是否發(fā)生差錯。 糾錯:糾正信息在傳送或存儲過程中所發(fā)生的錯誤
17、。2.2回答下列問題1)為什么計算機中采用二進制?答:因為二進制具有運算簡單和表示簡單的優(yōu)點,除此之外還有可靠和容易實現等特點。具體來說,是因為:(1)技術實現簡單,計算機是由邏輯電路組成,邏輯電話通常只有兩個狀態(tài),開關的接通與斷開,這兩種狀態(tài)正好可以用“1”和“0”表示。 (2)簡化運算規(guī)則:兩個二進制數和、積運算組合各有三種,運算規(guī)則簡單,有利于簡化計算機內部結構,提高運算速度。 (3)適合邏輯運算:邏輯代數是邏輯運算的理論依據,二進制只有兩個數碼,正好與邏輯代數中的“真”和“假”相吻合。 (4)易于進行轉換,二進制與十進制數易于互相轉換。2)為什么計算機中采用補碼表示帶符號的整數?答:采
18、用補碼運算具有如下兩個特征:(1)因為使用補碼可以將符號位和其他位統一處理,同時,減法也可以按加法來處理,即如果是補碼表示的數,不管是加減法都直接用加法運算即可實現。(2)兩個用補碼表示的數相加時,如果最高位(符號位)有進位,則進位被舍棄。這樣的運算有兩個好處:(a)使符號位能與有效值部分一起參加運算,從而簡化運算規(guī)則。從而可以簡化運算器的結構,提高運算速度;(減法運算可以用加法運算表示出來。)(b)加法運算比減法運算更易于實現。使減法運算轉換為加法運算,進一步簡化計算機中運算器的線路設計。3)浮點數的表示范圍和精確度分別由什么決定?字長一定時浮點數的表示范圍與精確度之間有和關系?答:浮點數的
19、表示范圍由階碼的位數決定,精確度由尾數的位數決定。當機器字長一定時,分給階碼的位數越多,尾數占用的位數就越少,則數的表示范圍越大。而尾數占用的位數減少,必然會減少數的有效數位,即影響數的精度。4)漢字輸入碼、機內碼和字型碼在漢字處理過程中各有何作用?答:漢字輸入碼、機內碼和字型碼,分別用于漢字的輸入、漢字在計算機內的處理以及漢字的顯示和打印。具體來說,計算機要對漢字信息進行處理,首先要將漢字轉換成計算機可以識別的二進制形式并輸入到計算機,這是由漢字輸入碼完成的;漢字輸入到計算機后,還需要轉換成內碼才能被計算機處理,顯然,漢字內碼也應該是二進制形式。如果需要顯示和打印漢字,還要將漢字的內碼轉換成
20、字形碼。5)在機內碼中如何區(qū)分兩個ASCII碼字符和一個漢字?答:將一個漢字看成是兩個擴展ASCII碼,使表示GB2312漢字的兩個字節(jié)的最高位都為1,而每個ASCII碼字符中每個字節(jié)的最高位為0。這樣就能區(qū)別一個機內碼到底對應一個漢字還是兩個西文字符。6)“8421碼就是二進制數”。這種說法對嗎?為什么?答:這種說法是不對的。8421碼是一種最簡單的有權碼,它選取4位二進制數的前10個代碼00001001分別對應表示十進制數的10個數碼。若按權求和,和數就等于該代碼所對應的十進制數。8421碼是一種編碼方式,用于十進位制與二進制數之間的轉換。而二進制數是用0和1兩個數碼來表示的數。二者是不同
21、的概念,不能等同。7)如何識別浮點數的正負?浮點數能表示的數值范圍和數值的精確度取決于什么?答:當采用一般浮點數格式表示浮點數時,階碼和尾數都各包含一位符號位。浮點數的正負由尾數的的符號位決定。當采用IEEE754格式時,通過數符就能判斷出浮點數的正負。浮點數能表示的數值范圍和數值的精確度,分別取決于階碼的位數和尾數的位數。8)簡述CRC的糾錯原理。答:發(fā)送部件將某信息的CRC碼傳送至接收部件,接收部件收到CRC碼后,仍用約定的生成多項式G(x)去除,若余數為0,表示傳送正確;若余數不為0,表示出錯,再由余數的值來確定哪一位出錯,從而加以糾正。具體的糾錯原理如下:(1)不論錯誤出現在哪一位,均
22、要通過將出錯位循環(huán)左移到最左邊的一位上時被糾正;(2)不為零余數的具有循環(huán)特性。即在余數后面補一個零除以生成多項目式,將得到下一個余數,繼續(xù)在新余數基礎上補零除以生成多項式,繼續(xù)該操作,余數最后能循環(huán)到最開始的余數。(3)CRC就是利用不為零余數的循環(huán)特性,在循環(huán)計算余數的同時,將收到的CRC編碼同步移動,當余數循環(huán)到等于最左邊位出錯對應的余數時,表明已將出錯的位移到CRC碼的最左邊,對出錯位進行糾錯。(4)繼續(xù)進行余數的循環(huán)計算,并同步移動CRC編碼,當余數又回到最開始的值時,糾錯后的CRC碼又回到了最開始的位置。至此,完成CRC的糾錯任務。2.3 寫出下列各數的原碼、反碼和補碼。 0, 一
23、0, 0.10101, 一0.10101, 0.11111, 一0.11111, 0.10000, 0.10000解:x=0,則0原 0.000 , 0 反 0.000,0補 0.000;x=-0,則0原 1.000,0反 1.11l,0補 0.000;x=0.10101,則x原 0.10101,x反 0.10101,x補 0.10101;x=一0.10101,則x原 1.10101,x反 1.01010,x補 1.01011;x=0.11111,則x原 0.11111,x反 0.00000,x補 0.00001;x=一0.11111,則x原 1.11111,x反 1.00000,x補 1.0
24、0001;x=0.10000,則x原 1.10000,x反 1.01111,x補 1.10000;x=0.10000,則x原 0.10000,x反 0.10000,x補 0.10000。2.4 已知數的補碼表示形式,求數的真值。x補0.10010, x補1.10010, x補1.11111, x補1.00000, x補0.10001, x補1.00001,解:x補0.10010,則x原0.10010,x=0.10010;x補1.10010,則x原1.01101,x=0.01101;x補1.11111,則x原1.00000,x=0;x補1.00000,則x原1.11111,x=0.11111;x
25、補0.10001,則x原0.10001,x=0.10001;x補1.00001,則x原1.11110,x=0.11110。2.5 已知x0.10110,y0.01010,求:x/2補, x/4補, y/2補, 2y補解: x原=0.10110=x反=x補,所以x/2補=0.010110,x/4補=0.0010110;y原=1.01010,y反=1.10101,y補=1.10110,所以y/2補=1.110110,2y補=1.0110。2.6 C語言中允許無符號數和有符號整數之間的轉換, 下面是一段C語言代碼: Int x =-1; Unsigned u=2147483648;Printf (“
26、x=%u=%dn”,x,x);Printf (“u=%u=%dn”,u,u); 給出在32位計算機中上述程序段的輸出結果并分析原因.解:x=4294967295=-1;u=2147483648=-2147483648原因:x是int型,在計算機中以補碼形式存在。%u以無符號輸出,%d輸出真值,所以x=4294967295=-1。u=231是一個無符號數,無溢出,由于首位為1%u符號輸出第一位為非符號位,所以是2147483648%d 第一位為符號位,所以是負數,取反加1還是231所以是-2147483648。2.7 分析下列幾種情況下所能表示的數據范圍分別是多少 1)16位無符號數;2)16位
27、原碼定點小數;3)16位補碼定點小數; 4) 16位補碼定點整數;解:1)16位無符號數:0 1111 1111 1111 1111,即0 216-1=655352)16位原碼定點小數:1.111 1111 1111 1111 0.111 1111 1111 1111,即 -(1-2-15) 1-2-153)16位補碼定點小數:1.000 0000 0000 0000 0.111 1111 1111 1111,即 -1 1-2-154) 16位補碼定點整數:1000 0000 0000 0000 0111 1111 1111 1111,即 -215 215-12.8 用補碼表示8位二進制整數,
28、最高位用一位表示符號(即形如x0x1x2x3x4x5x6x7)時,模應為多少?解:因為8位二進制數補碼的表示范圍為:-128127一共有256個數,所以模為256。2.9 用IEEE754 32位浮點數標準表示十進制數 a) b)3.1415927 c)64000解:a) 首先分別將整數和分數部分轉換成二進制數: =-110.101移動小數點,使其變成1.M的形式:-110.101=-1.10101*22于是得到:S=0, e = 2,E= 10+01111111 = 10000001,M = 10101最后得到32位浮點數的二進制存儲格式為:1100 0000 1101 0100 0000
29、0000 0000 0000=(C0D40000)16b) 首先分別將整數和分數部分轉換成二進制數:3.1415927=移動小數點,使其變成1.M的形式=×2于是得到:S=0, e = 1,E= 1+01111111 =10000000,M = 最后得到32位浮點數的二進制存儲格式為:0100 0000 0100 1001 0000 1111 1101 1010=(40490FDA)16c) 首先將6400轉換成二進制數:64000移動小數點,使其變成1.M的形式×212于是得到:S=0, e = 12,E= 1100+01111111 =10001011,M = 1001
30、最后得到32位浮點數的二進制存儲格式為:0100 0101 1100 1000 0000 0000 0000 0000=(45C80000) 162.10 求與IEEE754 32位浮點數43940000H對應的十進制數。解:43940000H=(0100 0011 1001 0100 0000 0000 0000 0000)2S=0,E=(10000111)2-127=8,M=1.00101所以表示數為100101000,對應的十進制數為296。2.11 求32位 IEEE754 浮點數能表示的最大數和最小數。解:用IEEE754格式(E的取值范圍:1254,留出全0和全1分別表示0和無窮大
31、) 31 30 23 22 0SEM(1) 最大數的二進制表示: 即 2127(2-2-23)(2) 最小數的二進制表示: 即 - 2127(2-2-23)2.12 設有兩個正浮點數:N12m×M1,N22n×M2。(1)若mn,是否有N1N2?(2)若M1和M2是規(guī)格化的數,上述結論是否正確?解:(1)不一定。例如,N123×0.001,N222×0.01,此時mn,卻有N1N2。再如,N123×0.001,N222×0.1,此時mn,卻有N1N2。(2)正確。因為浮點數規(guī)格化,要求尾數的最高位為非0數碼,即當尾數的值不為零時,其絕
32、對值應大于或等于(1/2)10。那么M1和M2都必須是0.1× × ×的形式。這時,若mn,則一定有N1N2。2.13 設二進制浮點數的階碼為3位,尾數是7位。用模2補碼寫出它們所能表示的最大正數、最小正數、最大負數和最小負數,并將它們轉換成十進制數。解: 補碼 真值最大正數: 011;0.111111, 23×(1-2-6)最小正數: 101;0.000001, 23×2-6最大負數: 101;1.111111, -23×2-6最小負數: 011;1.000000, -23×(1-2-6)2.14 將下列十進制數表示成浮點
33、規(guī)格化數,階碼4位,尾數10位,各含1位符號,階碼和尾數均用補碼表示。(1)57/128 (2) 69/128解:(1)57/128=(0.0111001)2,記x=0.0111001,則x原=x反=x補=0.0111001,規(guī)格化:x補=0.111001*2-1階碼的原碼為:1001,因此補碼為:1111尾數為:0111001000表示成浮點規(guī)格化數:1111 0111001000(2)-69/128=(-0.1000101)2,記x=-0.1000101,則x原=1.1000101,x反=1.0111010,x補=1.0111011,無需規(guī)格化,階碼為0000,尾數為1011101100表
34、示成浮點規(guī)格化數:0000 10111011002.15 設有效信息為01011011,分別寫出奇校驗碼和偶校驗碼。如果接收方收到的有效信息為01011010,說明如何發(fā)現錯誤。解:奇偶校驗位分別為:0和1,奇校驗碼:010110110偶校驗碼:010110111如果采用奇校驗,則發(fā)送方發(fā)出的奇校驗碼x=010110110(前8位是有效信息位,最后一位是校驗位),如果接收方收到的x=010110100 (只有1位出錯,最后一個0是校驗位), 接收方按奇校驗方式根據01011010計算得到的驗位C1 ,與從信息中讀到得校驗碼的取值不同,表明傳送的信息發(fā)生了錯誤。如果采用偶校驗,利用相似的方法可以
35、發(fā)現錯誤。2.16由 6 個字符的 7 位 ASCII 編碼排列,再加上水平和垂直偶校驗位構成如表2.23的行列結構(最后一列為水平奇偶校驗位,最后一行為垂直奇偶校驗位)表2.23 ASCII碼交叉校驗字符7 位 ASCII 碼HP30X1X200110Y1100100X31+X41010110Y201X5X61111D100X710X80=0X9111X1011VP00111X111X12則 X1 X2 X3 X4 處的比特分別為 _1110_; X5 X6 X7 X8 處的比特分別為 _1000_; X9 X10 X11 X12 處的比特分別為 _1011_; Y1 和 Y2 處的字符分別
36、為 _I_ 和 _7_。解答思路:利用交叉奇/偶校驗原理來確定各個X值,再查詢ASCII碼表獲知 Y1 和 Y2是什么字符。2.17 設8位有效信息為01101ll0,試寫出它的海明校驗碼。給出過程,說明分組檢測方式,并給出指誤字及其邏輯表達式。如果接收方收到的有效信息變成01101111,說明如何定位錯誤并糾正錯誤。解:被檢驗位有8位,設檢驗位有r位因為:8+r<=2r -1 r=4; 設四位分別為P1,P2,P3,P4 海明碼為:P1P20P3110P41110 P1:3,5,7,9,11 P2:3,6,7,10,11 P3:5,6,7,12 P4:9,10,11,12所以 P1=1
37、,P2=1 P3=0 P4=1指錯位G1:1,3,5,7,9,11 G2:2,3,6,7,10,11 G3:4,5,6,7,12 G4:8,9,10,11,12 G1=0,G2=0,G3=0,G4=0圖略。2.18 設要采用CRC編碼傳送的數據信息x=1001,當生成多項式為G(x)1101時,請寫出它的循環(huán)校驗碼。若接收方收到的數據信息x=1101,說明如何定位錯誤并糾正錯誤。解:作模二除法:所以循環(huán)碼為:1001011。若接收到的數據信息x=1101,所以是第2位出錯,將第2位的1改為0即可。第三章 運算方法和運算器 習 題 三3.1解釋下列名詞變形形補碼:即用兩個二進制位來表示數據的符號
38、位,其余與補碼相同。 溢出:運算結果超出數據類型所能表示數據范圍的現象稱為溢出。 陣列乘法:采用類似手工乘法運算的方法,用大量與門產生手工乘法中的各乘積項,同時將大量一位全加器按照手工乘法算式中需要進行加運算的各相關項的排列方式組成加法器陣列。 恢復余數除法:比較被除數(余數)與除數的大小是用減法實現的。對原碼除法而言,由于操作數以絕對值的形式參與運算,因此,相減結果為正(余數的符號位為0)說明夠減,商上1;相減結果為負(余數的符號位為1)說明不夠減,商上0。由于除法通過減法實現,當商上1時,可將比較數據大小時的減法操作與除法操作中的減法操作合并,即商上1后繼續(xù)后面的除法操作。商上0時表明不夠
39、減,但因比較操作時已經實施了一次減法,因此,需要對執(zhí)行比較操作后的結果加上除數,既將余數還原成比較操作前的數值,這種方法就稱為恢復余數法。不恢復余數除法:又稱加減交替法,是對恢復余數法的改進。不恢復余數法的特點是不夠減時不再恢復余數,而根據余數的符號作相應處理就可繼續(xù)往下運算,因此運算步數固定,控制簡單,提高了運算速度。陣列除法:類似于陣列乘法器的思想,為了加快除法的執(zhí)行速度,也可以采用陣列除法器來實現除法。為簡化運算及陣列除法器的結構,對參加運算的數據進行適當的處理,使其以正數的形式參加運算。 行波進位:多位進位之間存在高位進位的產生依賴低位進位的一種進位方式。并行進位:高、低進位之間不存在
40、具有依存關系,而是同時計算的進位方式。算術移位:分為算術左移和算術右移。其中算數左移n位相當于乘上2n,執(zhí)行方法是把原來的數中每一位都向左移動n個位置,左面移出的高位丟棄不要,右面低位空出的位置上全部補0,當符號位發(fā)生改變時表明發(fā)生了溢出。算術右移時,符號位保持不變,其余各位依次右移,最右邊一位移出,將符號位拷貝到左邊空出的位,一次移位相當于除2。邏輯移位:邏輯左移n位的執(zhí)行方法,是把原來的數中每一位都向左移動n個位置,左面移出的高位丟棄不要,右面低位空出的位置上全部補"0"。 邏輯右移n位的執(zhí)行方法是把原來數中的每一位都向右移動n個位置,右面移出的低位丟棄不要,左面高位空
41、出的位置上全部補0。對階:使階碼相等的過程,對階的時一般采取小的階碼向大階碼看齊的方式。 規(guī)格化:就是使浮點數的運算結果中,將尾數從非規(guī)格化數變成規(guī)格化數的過程。根據尾數形式的不同,規(guī)格化可分為左移規(guī)格化和右移規(guī)格化。3.2回答下列問題: 1)為什么采用并行進位能提高加法器的運算速度? 答:由于并行進位電路能很快產生各位的進位信號,使得加法器的速度大大提高。2)如何判斷浮點數運算結果是否發(fā)生溢出? 答:由于溢出與數據的表示范圍有關,而浮點數的階碼影響到其數據表示的范圍,因此,浮點數的溢出是通過接碼的是否溢出為判斷標志。對于采用雙符號位的階碼而言,當雙符號位不同時表示浮點數發(fā)生溢出,否則則未發(fā)生
42、溢出。3)如何判斷浮點數運算結果是否為規(guī)格化數?如果不是規(guī)格化數,如何進行規(guī)格化? 答:當尾數采用補碼表示時,若運算結果不是11.0×××或00.1×××的形式時,結果就不是規(guī)格化數。則應進行相應的規(guī)格化處理:·當尾數符號為01或10時,需要向右規(guī)格化,且只需將尾數右移一位,同時將結果的階碼值加1。·當尾數運算結果為11.1×××或00.0×××時需要左移規(guī)格化,而且左移次數不固定,與運算結果的形式有關。左規(guī)的方法是尾數連同符號位一起左移位、和的階碼減1,
43、直到尾數部分出現11.0或00.1的形式為止。4)為什么陣列除法器中能用CAS的進位/借位控制端作為上商的控制信號? 答:陣列除法器利用不恢復余數的除法,當商上1的時候,會產生進位,當商上0時,不產生進位,進位信號與上商信號是相同的,所以可以用CAS的進位/借位控制作為上商的控制信號。5)移位運算和乘法及除法運算有何關系?答:移位運算是乘除法中的基本運算。3.3 已知x和y,用變形補碼計算xy,并判斷結果是否溢出。 (1) x0.11010,y0.101110 (2) x0.11101,y0.10100 (3) x0.10111,y0.11000 解:(1)x+y補=01.100010,溢出。
44、(2)x+y補=00.01001,未溢出。(3)x+y補=10.10001,溢出。3.4 已知x和y,用變形補碼計算xy,并判斷結果是否溢出。 (1) x0.11011,y0.11101 (2) x0.10111,y0.11110 (3) x0.11111,y0.11001 解:(1)x-y補=11.11110,未溢出。(2)x-y補=11.11001,未溢出。(1)x-y補=11.11001,未溢出。3.5 設移碼用6位表示(包含2位符號位),求x ± y移(1)x = -6 , y = -3(2)x=7 , y =11(3)x=-3 , y =-12 解:(1)x移=001010
45、,y移= 001101 -y移=110011 Y補= 111101 -Y補= 000011 X移 + y移=010111,X移 + Y補= 001010+111101 =000111根據移碼加法公式x + y移=X移 + Y補= 000111根據移碼加法公式及溢出判斷規(guī)則,雙符號位為00,結果為負,未溢出。根據移碼的減法公式: -y移 = 移 + -y補= 001010 + 000011 = 001101根據移碼溢出判斷規(guī)則,雙符號位為00,結果為負,未溢出。(2)x移=110111, y補= 001011 -y補=110101根據移碼加法公式x + y移=X移 + Y補= 010111+ 0
46、01011 = 100010 (根據教材中說明的當以譯碼和補碼兩種數據表示進行運算時,要將移碼第一符號位表示為0)根據移碼溢出判斷規(guī)則,雙符號位為10,結果為正,且發(fā)生溢出。根據移碼的減法公式: -y移 = 移 + -y補= 010111+ 110101 = 001100根據移碼溢出判斷規(guī)則,雙符號位為00,結果為負,未溢出。(3)略,請參照本題前兩小題的思路和方法求解即可3.6用原碼一位乘法計算x×y?(1) x0.11111,y0.11101(2) x0.11010,y0.01011解:(1)部分積 乘數(y) 判斷位 說明 00.00000 yf.11101 P00 00.11
47、111 00.11111 00.01111 1 yf.1110 右移一位,得P1 00.00000 00.01111 00.00111 11 yf.111 右移一位,得P2 00.11111 01.00110 00.10011 011 yf.11 右移一位,得P3 00.11111 01.10010 00.11001 0011 y.1 右移一位,得P4 00.1111101.11000 00.1110000011 yf 右移一位,得P5|x|·|y|由于 Pfxfyf011所以 x·y -0.1110000011(2)部分積 乘數(y) 判斷位 說明 00.00000 yf. 01011 P00 00.11010 00.11010 00.01101 0 yf.0101 右移一位,得P1 00
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東科學技術職業(yè)學院《電氣控制與PLC控制技術B》2023-2024學年第一學期期末試卷
- 廣東酒店管理職業(yè)技術學院《建筑設計A(六)》2023-2024學年第一學期期末試卷
- 廣東交通職業(yè)技術學院《市政管理》2023-2024學年第一學期期末試卷
- 廣東海洋大學《虛擬互動技術》2023-2024學年第一學期期末試卷
- 廣東工商職業(yè)技術大學《學前教育發(fā)展前沿專題》2023-2024學年第一學期期末試卷
- 《創(chuàng)投基金推介》課件
- 護理服務與安全課件
- 《職業(yè)精神解讀》課件
- 《膳食與營養(yǎng)婦科》課件
- 贛州師范高等??茖W?!督逃夹g在中學化學教學中的應用》2023-2024學年第一學期期末試卷
- 抗菌藥物臨床應用指導原則(2023年版)
- 2023年軍政知識綜合題庫
- 2023-2024學年福建省福州市小學語文 2023-2024學年六年級語文期末試卷期末評估試卷
- YY 0286.1-2019專用輸液器第1部分:一次性使用微孔過濾輸液器
- GB/T 22544-2008蛋雞復合預混合飼料
- GB/T 12224-2015鋼制閥門一般要求
- 特殊焊接作業(yè) 安全要求
- 浩學堂中西醫(yī)結合執(zhí)業(yè)醫(yī)師系列之診斷學基礎
- CRRT-抗凝詳解課件
- plc控制的電動機正反轉課件
- 東南大學結構設計原理大作業(yè)完成稿
評論
0/150
提交評論