第1章基礎知識(1)-數制_第1頁
第1章基礎知識(1)-數制_第2頁
第1章基礎知識(1)-數制_第3頁
第1章基礎知識(1)-數制_第4頁
第1章基礎知識(1)-數制_第5頁
已閱讀5頁,還剩29頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、2013-081微型計算機原理微型計算機原理 2013-082第第1 1章章 微型計算機基礎微型計算機基礎l 為什么要學習微型計算機原理與匯編語言程序設計?為什么要學習微型計算機原理與匯編語言程序設計?l微型計算機是什么?微型計算機是什么?l微型計算機的基本工作原理是什么?微型計算機的基本工作原理是什么?l計算機中的信息用什么方式表示?計算機中的信息用什么方式表示?l當前當前PC即使用的即使用的X86系列微處理器的結構與特點是什么?系列微處理器的結構與特點是什么?2013-083 l 現代信號檢測、信息處理離不開計算機,特別是離不開微現代信號檢測、信息處理離不開計算機,特別是離不開微型計算機系

2、統。型計算機系統。l 要充分發揮計算機性能,需要掌握計算機是如何工作的,信要充分發揮計算機性能,需要掌握計算機是如何工作的,信息在計算機內部是如何進行處理的。息在計算機內部是如何進行處理的。l 匯編語言是面向計算機的語言,學習匯編語言程序設計,能匯編語言是面向計算機的語言,學習匯編語言程序設計,能夠幫組我們更好的理解計算機的工作原理。夠幫組我們更好的理解計算機的工作原理。l 在信號檢測與實時處理等領域(在信號檢測與實時處理等領域(例如手機、多媒體移動播例如手機、多媒體移動播放器、各種智能儀表、物聯網中各種智能傳感器及檢測裝置放器、各種智能儀表、物聯網中各種智能傳感器及檢測裝置)中,計算機的硬件

3、資源有限,而又要求能中,計算機的硬件資源有限,而又要求能低功耗、實時高速低功耗、實時高速處處理信息,這時希望編寫的程序要精練,能充分利用硬件資源,理信息,這時希望編寫的程序要精練,能充分利用硬件資源,需要掌握硬件知識,才能充分利用硬件資源。需要掌握硬件知識,才能充分利用硬件資源。 學習用匯編語言編寫程序,是學習計算機內部工作原理最學習用匯編語言編寫程序,是學習計算機內部工作原理最好的方法。好的方法。2013-084匯編語言直接控制計算機的硬件資源,對于直接操作計算機硬匯編語言直接控制計算機的硬件資源,對于直接操作計算機硬件資源的程序,會用匯編語言更有效,有些特殊的操作(例件資源的程序,會用匯編

4、語言更有效,有些特殊的操作(例如中斷優先級設置、中斷的允許和屏蔽、中斷向量設置等)如中斷優先級設置、中斷的允許和屏蔽、中斷向量設置等)只能用匯編語言來實現。只能用匯編語言來實現。一般情況下,對于完成相同的任務,用機器語言(或匯編語言)一般情況下,對于完成相同的任務,用機器語言(或匯編語言)編寫的程序運行起來比用高級語言編出的程序快得多,占用編寫的程序運行起來比用高級語言編出的程序快得多,占用的空間要??;的空間要小;C語言程序的運行需要一定的條件,通常在語言程序的運行需要一定的條件,通常在C語言語言main函數運行函數運行前,我們用匯編語言編寫一段程序,這段程序為前,我們用匯編語言編寫一段程序,

5、這段程序為C語言運行設語言運行設置好條件,然后再轉到置好條件,然后再轉到C語言語言main函數運行。函數運行。這個條件需要用匯編語言編寫一段程序,為這個條件需要用匯編語言編寫一段程序,為C語言的運行設語言的運行設置好條件置好條件2013-085 當然,匯編語言也有缺點:當然,匯編語言也有缺點:它是面向機器的語言,相對于它是面向機器的語言,相對于C語言等高級語言,程序的閱讀語言等高級語言,程序的閱讀理解比較困難理解比較困難由于面向機器,不同的計算機具有不同的指令系統和匯編語由于面向機器,不同的計算機具有不同的指令系統和匯編語言,匯編語言程序的可移植性差言,匯編語言程序的可移植性差由于匯編語言直接

6、面向機器編程,要求程序設計者熟悉計算由于匯編語言直接面向機器編程,要求程序設計者熟悉計算機硬件。機硬件。2013-086 微型計算機是什么?它是如何工作的?微型計算機是什么?它是如何工作的?計算機工作過程實際上是控制信息、數據信息在計算機各功能計算機工作過程實際上是控制信息、數據信息在計算機各功能部件之間流動過程中實現的。部件之間流動過程中實現的。計算機的硬件是由數字邏輯電路為主構成的。計算機的硬件是由數字邏輯電路為主構成的。計算機的硬件計算機的硬件主要是由數字邏輯電路構成的一個數字主要是由數字邏輯電路構成的一個數字/邏輯邏輯處理電路系統。處理電路系統。我們先來看一下我們在數字電子技術中學過的

7、基本運算電路我們先來看一下我們在數字電子技術中學過的基本運算電路2013-087A03F08A11F19A219F211A317F312B 04B 12B 218B 316G13C N15P14S05S16S27U?74 LS38 1功能選擇功能選擇輸入數輸入數據據功能功能輸出數據輸出數據FS2S1S0AB000XX清零清零F=0000001AB減法減法F=B減減A010減法減法F=A減減B011加法加法F=A加加B100101110111XX預置預置F=111ABFA,B: 輸入數據輸入數據 S: 通過不同的代碼組合,控通過不同的代碼組合,控制該電路的功能制該電路的功能2013-088在在A

8、、B端輸入數據,在端輸入數據,在we-da有效時,有效時,D3D0送送DA保存保存 只要控制只要控制S2、S1、S0的狀態(的狀態(0、1的不同組合),的不同組合),就可以實現對就可以實現對A,B數據的不同處理,數據的不同處理,就可以在就可以在F端得到所需要的運算結果。端得到所需要的運算結果。2013-089如果將如果將A、B數據按一定的規則存放在存儲器中數據按一定的規則存放在存儲器中將將S端的控制代碼也按某一特定的規則存放在存儲其中端的控制代碼也按某一特定的規則存放在存儲其中(1) 在某一特定時刻在某一特定時刻t1,我們通過一定的方法,從存儲器中取出,我們通過一定的方法,從存儲器中取出所需要

9、的控制代碼,并使所需要的控制代碼,并使WE_RI有效,控制代碼送到有效,控制代碼送到RI寄存器寄存器(2) 在下一時刻在下一時刻t2,取出數據,取出數據A,并使,并使WE_DA有效,則數據被送有效,則數據被送寄存器寄存器DA(3) 在時刻在時刻t3取出數據取出數據B,并使,并使WE_DB有效,則數據被送送寄存有效,則數據被送送寄存器器DB(4) 在在t4時刻,在時刻,在F端就得到所需要的計算結果(端就得到所需要的計算結果(實際上實際上t3時刻后,時刻后,經過一段門傳輸延時,在經過一段門傳輸延時,在F就得到結果)就得到結果)。如果輸出寄存器如果輸出寄存器RC輸出端有一個三態門,三態門輸出再接回總

10、輸出端有一個三態門,三態門輸出再接回總線線BUS,平時三態門允許控制信號,平時三態門允許控制信號EN_F無效,結果無效,結果F只保存在只保存在RC。在。在t4時刻,使時刻,使EN_F有效,有效,F通過三態門送到通過三態門送到BUS,如果同,如果同時使時使WE_RA有效,則運算結果被送到寄存器有效,則運算結果被送到寄存器RA2013-0810BUS再加上存儲器,就是一個簡單的計算機硬件系統再加上存儲器,就是一個簡單的計算機硬件系統這樣,按特定規則存儲在存儲器的控制代碼和數據,就是計算機這樣,按特定規則存儲在存儲器的控制代碼和數據,就是計算機程序。程序。WERI,WE_DA , WE_DB,RD_

11、RAWE_RA EN_F等信號等信號由由RI的某幾位的某幾位通過譯碼電路通過譯碼電路產生產生A03F08A11F19A219F211A317F312B04B12B218B316G13CN15P14S05S16S27U?74LS381Q0Q1Q2DADBWE_DAWE_DBRIWE_RIEN_F244譯碼WE_xx等控制信號RD_RAWE_RARARD_xx等控制信號2013-0811計算機硬件:計算機硬件: 是由數字邏輯電路為主構成的電路系統是由數字邏輯電路為主構成的電路系統計算機軟件:計算機軟件: 按一定規則和順序安排并存放在存儲器中的控制代碼,以按一定規則和順序安排并存放在存儲器中的控制代

12、碼,以及所需要的數據。及所需要的數據。二進制信息具有二進制信息具有0,1,可以方便的用數字電路的兩狀態來表示,可以方便的用數字電路的兩狀態來表示,因此計算機系統內部通常使用二進制信息。因此計算機系統內部通常使用二進制信息。2013-08121. 1.1 1 計算機中的數制和編碼計算機中的數制和編碼計算機的硬件系統主要是由數字電路構成的電路系統。數字計算機的硬件系統主要是由數字電路構成的電路系統。數字電路具有高電平和低電平兩個邏輯狀態,表示、電路具有高電平和低電平兩個邏輯狀態,表示、 存儲、處理存儲、處理二進制信息方便。二進制信息方便。計算機中使用二進制信息。計算機中使用二進制信息。l 數值信息

13、:數值信息:用二進制形式表示用二進制形式表示l 非數值信息:用二進制編碼表示非數值信息:用二進制編碼表示l 程序在計算機內部也是用二進制形式表示的程序在計算機內部也是用二進制形式表示的。2013-08131.1.1 數制及其轉換數制及其轉換 十進制計數法的特點是:十進制計數法的特點是: 使用使用10個數字符號(個數字符號(0,1,2,9)的不同組合來表示一個十)的不同組合來表示一個十進制數;進制數; 采用采用“逢十進一逢十進一”的進位規則;的進位規則;2013-0814任何一個十進制數可表示為:任何一個十進制數可表示為: 110nmjijDKN式中:式中:m表示小數位的位數,表示小數位的位數,

14、n表示整數位的位數,表示整數位的位數,Kj為第為第j位位上的數符(可以是上的數符(可以是0 9十個數字符號中的任一個)。十個數字符號中的任一個)。 例如例如 138.5(D)= 1012105108103101注意書寫:注意書寫:以后綴以后綴D或或d 表示十進制數(表示十進制數(Decimal)。對于)。對于十進制數,該后綴可以省略。十進制數,該后綴可以省略。 2013-0815 二進制計數法的特點是:二進制計數法的特點是: 使用使用2個數字符號(個數字符號(0,1)的不同組合來表示一個二進制數;)的不同組合來表示一個二進制數; 逢二進一逢二進一 的進位規則;的進位規則;任何一個二進制數可表示

15、為:任何一個二進制數可表示為: 12nmiiiBBN式中:式中:m為小數位的位數,為小數位的位數,n為整數位的位數,為整數位的位數,Bi為第為第i位上的數位上的數符(符(0或或1)。)。 例如例如1101.11B= )(75.13212121202121210123D后綴后綴B或或b表示二進制數(表示二進制數(Binary),),例如例如1011B,后綴不能省略,后綴不能省略2013-0816 十六進制計數法的特點是:十六進制計數法的特點是:使用使用16個數字符號個數字符號(0,1,2,3,9,A,B,C,D,E,F)的不同組合來的不同組合來表示一個十六進制數,其中表示一個十六進制數,其中A

16、F 依次表示依次表示10 15; 逢十六進一逢十六進一的進位規則的進位規則;2013-0817任何一個十六進制數可表示為任何一個十六進制數可表示為: 116nmiiiHHN式中:式中:m為小數位的位數,為小數位的位數,n為整數位的位數,為整數位的位數,Hi為第為第i位上的位上的數符(可以是數符(可以是0,1,,9,A,B,C,D,E,F十六個數字符號中的任一十六個數字符號中的任一個)。個)。 例例2.3 0E5AD.BFH =210123161516111613161016516142013-0818注意在書寫十六進制數據時,如果最高位是大于9的數符(AF),則需要在前面加一個0。例如:0B3

17、6H以后綴H或h表示十六進制數(Hexadecimal),后綴不能省略。例如 12345H十六進制數據如果寫成 12345 ,沒有“H”,則表示是一個十進制數據。2013-0819一般來說,對于基數為一般來說,對于基數為X的任一數可用多項式表示為:的任一數可用多項式表示為: 1nmiiiXXkN式中符號:式中符號:lX為基數,表示為基數,表示X進制;進制;li為位序號;為位序號;lm為小數部分位數;為小數部分位數;ln為整數部分的位數;為整數部分的位數;lki為第為第i位上的數值,為位上的數值,為0,1,2, X-1共共X個數字符號中任一個;個數字符號中任一個;lX i為第為第i位的權。位的權

18、。 2013-0820 二進制、十六進制以至任意進制數轉換為十進制數的方法二進制、十六進制以至任意進制數轉換為十進制數的方法很簡單,只要按上面的展開公式各位按權展開(即該位的數值很簡單,只要按上面的展開公式各位按權展開(即該位的數值乘于該位的權)求和即可。乘于該位的權)求和即可。例如:例如: 不同數制數據的相互轉換不同數制數據的相互轉換62021212001100123B5216416316016000340123H2013-0821下面通過一個簡單的例子對轉換方法進行分析。例如,下面通過一個簡單的例子對轉換方法進行分析。例如, B2B3B0B2B1B0B3B10123212021211011

19、13BD 可見,要確定可見,要確定13D對應的二進制數,只需從右到左分別確對應的二進制數,只需從右到左分別確定定 B0,B1,B2,B3即可。即可。 2013-0822 上式右側除以上式右側除以2: 商為商為 , 余數為余數為1,此余數即為,此余數即為B0; 商再除以商再除以2: 商為商為 ,余數為,余數為0,此余數即為,此余數即為B1; 商再除以商再除以2: 商為商為 ,余數為,余數為1,此余數即為,此余數即為B2; 商再除以商再除以2: 商為商為0(商為(商為0時停止時停止),余數為,余數為1,此余數即為,此余數即為 B3。 0122021210121210212013-0823 由以上過

20、程可以得出十進制整數部分轉換為二進制數的由以上過程可以得出十進制整數部分轉換為二進制數的方法:方法:除以基數除以基數(2)(2)取余數,先為低位取余數,先為低位(B(B0 0) )后為高位后為高位 顯然,該方法也適用于將十進制整數轉換為八進制整數顯然,該方法也適用于將十進制整數轉換為八進制整數(基數為(基數為8)、十六進制整數(基數為)、十六進制整數(基數為16)以至其它任何進制)以至其它任何進制整數。整數。 這種方法叫做長除法。這種方法叫做長除法。2013-0824例例1.1 :將十進制數:將十進制數1234轉換成二進制數。轉換成二進制數。12342617030811540 770 381

21、190 91 41 20 10 0110011010010B最先得到的是最低有效位最后得到的是最高有效位2013-08252) 小數部分的轉換小數部分的轉換同樣用一個簡單例子說明十進制小數部分的轉換方法。例如,同樣用一個簡單例子說明十進制小數部分的轉換方法。例如, B-1B-2B-1B-221212111 .075.0BD要將一個十進制小數轉換為二進制小數,實際上就是求要將一個十進制小數轉換為二進制小數,實際上就是求B-1,B-2,給上式右側乘以基數給上式右側乘以基數2得:得:1.5 (1+1/2)1211整數部分為整數部分為B-1小數部分小數部分2013-08260.752=1.5 整數部分

22、為整數部分為1,此即為,此即為B-1。小數部分為。小數部分為1 2-1。 剩余的剩余的小數部分再乘以基數小數部分再乘以基數2得:得:20.5=1 整數部分為整數部分為1,此即為,此即為B-2。 經過經過2步步,此時小數部分已為此時小數部分已為0,轉換完畢轉換完畢.若不為若不為0,繼續求,繼續求B-3,B-4,直到小數部分為,直到小數部分為0或小數部分或小數部分的位數滿足一定精度時為止的位數滿足一定精度時為止. 2013-0827 由以上分析可得到十進制小數部分轉換為二進制小數的方法:由以上分析可得到十進制小數部分轉換為二進制小數的方法: 小數部分乘以基數(小數部分乘以基數(2)取整數()取整數

23、(0或或1),),先得到的為高位先得到的為高位(B-1)后為低位。)后為低位。 顯然,該方法也適用于將十進制小數轉換為八進制小數(基顯然,該方法也適用于將十進制小數轉換為八進制小數(基數為數為8)、十六進制小數(基數為)、十六進制小數(基數為16)以至其它任何進制小數。)以至其它任何進制小數。 小數部分的轉化,有時可能總也不會到小數部分的轉化,有時可能總也不會到0,這時只要轉換到所,這時只要轉換到所需要的為數就行了。需要的為數就行了。 例如例如: 將將 0.33轉換成二進制數轉換成二進制數,要求保留小數后要求保留小數后4位位2013-082820.33=0.66 -0 小數點后第一位20.66

24、=1.32 -1小數點后第二位20.32=0.64 -0小數點后第三位20.64=1.28 -1小數點后第四位20.28= 已到要求的轉換精度轉換結果:0.33=0.0101B 2013-0829既有整數,又有小數,如何進行轉換?既有整數,又有小數,如何進行轉換?則分別轉換,再合成。則分別轉換,再合成。 整數部分整數部分按照整數轉換方法按照整數轉換方法可用長除法轉換,得到整可用長除法轉換,得到整數部分的二進制數據數部分的二進制數據 小數部分小數部分安照小數轉換方法安照小數轉換方法乘乘2取整法,獲得所需要的取整法,獲得所需要的位數位數兩部分合起來。兩部分合起來。2013-0830 例例 將將13.75轉換為二進制數。轉換為二進制數。 分別將整數和小數部分進行轉換:分別將整數和小數部分進行轉換: 整數部分:整數部分:13=1101B 小數部分:小數部分:0.75=0.11B 因此,因此,13.75=1101.11B 例如:將例如:將13.33轉換為二進制數,要求小數部分為轉換為二進制數,要求小數部分為4位位整數部分:整數部分:1101,小數部分:小數部分:.0101 13.34=1101.0101B 小數部分沒有轉換完,只需要到所規定的為數就行了(雖小數部分沒有轉換完,只需要到所規定的為數就行了(雖然它會造成誤差)。然它會造成誤差)。2013-0831例例 將將

溫馨提示

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

評論

0/150

提交評論