計算機應用基礎模塊一 二進制_第1頁
計算機應用基礎模塊一 二進制_第2頁
計算機應用基礎模塊一 二進制_第3頁
計算機應用基礎模塊一 二進制_第4頁
計算機應用基礎模塊一 二進制_第5頁
已閱讀5頁,還剩55頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

計算機應用基礎

模塊一計算機基礎應用

字符的二進制編碼吳楊峰二

字符的二進制編碼數字化信息相關術語數據的概念1、比特的概念比特(binarydigit,bit)在數字系統中是組成信息的最小單位;數字技術的處理對象,二進制位,位;比特只有兩種狀態:數字0或數字1;計算機中的數、文字、符號、圖像、聲音;等,都表現為比特的不同組合;一般用小寫的字母“b”表示(bit)。字節Byte“比特”單位太小,計算機并不單獨對比特進行處理、存儲或傳輸;而是采用稍大一些的計量單位——字節(Byte)1字節=8比特b7b6b5b4b3b2b1b0最高位最低位1個字節,其中bi為一個比特4、存儲容量的表示存儲容量是存儲器的重要指標,存儲容量的度量通常要比字節大得多,使用2的冪次作為單位有助于存儲器的設計。經常使用的單位有:“千字節”(KB),1KB=210字節=1024B“兆字節”(MB),1MB=220字節=1024KB“吉字節”(GB),1GB=230字節=1024MB(千兆)“太字節”(TB),1TB=240字節=1024GB(兆兆)數據的概念計算機是信息處理的工具,任何的信息必須轉換成二進制才能被計算機進行處理、存儲和傳輸。在計算機的內部,數是采用二進制進行表示,其主要原因是:電路簡單可靠性強簡化運算邏輯性強十進制數(Decimal)十進制的基數是“10”,使用十個符號0、1、2、3、4、5、6、7、8、9,逢十進一。例如:203.49=2×102+0×101+3×100+4×10-1+9×10-2一般地說,一個十進制數KnKn-1

...K1K0.K-1K-2...K-m

所代表的實際數值是:S=Kn×10n+Kn-1×10n-1+...+K1×101+K0×100+K-1×10-1+K-2×10-2+…+K-m×10-m個位十位十分之一位百分之一位第n位的權第n位的系數二進制數(Binary)1.

計算機是智能化的電器設備計算機就其本身來說是一個電器設備,為了能夠快速存儲、處理、傳遞信息,其內部采用了大量的電子元件,在這些電子元件中,電路的通和斷、電壓高低,這兩種狀態最容易實現,也最穩定、也最容易實現對電路本身的控制。我們將計算機所能表示這樣的狀態,用0,1來表示,即用二進制數表示計算機內部的所有運算和操作。二進制數(Binary)2.二進制數的運算法則二進制數運算非常簡單,計算機很容易實現,其主要法則是:

0+0=00+1=11+0=11+1=0由于運算簡單,電器元件容易實現,所以計算機內部都用二進制編碼進行數據的傳送、計算。二進制數(Binary)二進制的基數是“2”,使用兩個符號0和1,逢二進一:

(101.01)2=1×22+0×21+1×20+0×2-1+1×2-2

=(5.25)10一般地說,一個二進制數S=KnKn-1...K1K0.K-1K-2...K-m所代表的實際數值是:S=Kn×2n

+Kn-1×2n-1+…+K1×21

+K0×20

+K-1×2-1

+K-2×2-2+…+K-m×2-m二進制數的運算對二進制數也可以進行算術運算算術運算:兩個一位數的加法和減法的基本運算規則是: 加法 減法

0

011

0011+0+1+0+1

-0-1-0-1

011

10

0110

(向高位進1) (向高位借1)兩個多位二進制數的加、減法可以從低位到高位按上述規則進行,但必須考慮進位和借位的處理八進制數(Octonary)八進制數使用0、1、2、3、4、5、6、7八個符號,逢八進一。(365.2)8=3×82+6×81+5×80+2×8-1

=(245.25)10十六進制數(Hexadecimal)十六進制數使用十六個符號:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,其中A、B、C、D、E、F分別代表十進制的10、11、12、13、14、15。逢十六進一(F5.4)16=15×161+5×160+4×16-1=(245.25)10為什么要有不同進制?計算機中只使用二進制現實中最常用的是十進制八進制和十六進制是給程序員用的二進制數太長,書寫、閱讀、記憶均不便;32位二進制數用十六進制書寫時,只需8位。八進制和十六進制與二進制之間的轉換直觀、方便。除二進制外,其他進制的數在輸入進計算機之前全部被轉換成二進制。

數制之間的轉換十進制數與二進制數的轉換(1)二進制數=>十進制數位權相加法,計算按權展開式的和例如:將11101.1011B轉換為十進制數。

1×24+1×23+1×22+0×21+1×20+1×2-1+0×2-2+1×2-3+1×2-4=16+8+4+0+1+0.5+0+0.125+0.0625=29.6875(2)十進制整數=>二進制整數:除2取余(3)十進制小數=>二進制小數:乘2取整例如:將

29.6875轉換為二進制數。(1)先轉換整數部分29292142……172……032……112……10……1.小數點離小數點最近的一位=11101B(2)再轉換小數部分0.68750.6875×21.3750×20.375……10.75……0×21.5×20.5……11.00.0……1.小數點離小數點最近的一位=0.1011B十六進制數與二進制數的轉換轉換表十六進制數二進制數 十六進制數 二進制數

00000 81000

10001 91001

20010 A1010

30011 B1011

40100 C1100 50101 D1101 60110 E1110 70111 F1111二進制數轉換為十六進制數舉例:

001101001110.11001100B→34E.CCH十六進制數轉換為二進制數舉例:

35A2.CFH

→0011010110100010.11001111B轉換表八進制數二進制數八進制數二進制數

00004100100151012010611030117111二進制數轉換為八進制數舉例:

001101001110.110100B→1516.64Q八進制數轉換為二進制數舉例:

2467.32Q

→010100110111.011010B

八進制數與二進制數的轉換1、(11000101)2

=(

)10

2、(1010001)2

=(

)10

3、(11101)2

=(

)10

4、(100001)2

=(

)10

5、(11011)2

=(

)10

6、(100110)2

=(

)10

7、(111000)2

=(

)10

8、(100011)2

=(

)10題目例2:.將下列二進制數轉化為十進制數、八進制數和十六進制數。

(1)111001.101

(2)110010.1101

(3)1011.11011

(4)101101.0111解:(1)

(111001.101)B=1*2^5+1*2^4+1*2^3+1*2^0+1*2^-1+1*2^-3=(57.625)D

111

001.

101

7

1

5

所以(111001.101)B=(71.5)Q

0011

1001.

1010

3

9

A

所以(111001.101)B=(39.A)H(2)

(110010.1101)B=1*2^5+1*2^4+1*2^1+1*2^-1+1*2^-2+1*2^-4=(50.8125)D

110

010.

110

100

6

2

6

4

所以(110010.1101)B=(62.64)Q

0011

0010

1101

3

2

D

所以(110010.1101)B=(32.D)H

(3)

(1011.11011)B=1*2^3+1*2^1+1*2^0+1*2^-1+1*2^-2+1*2^-5+1*2^-6=(A.8438)D

001

011.

110

110

1

3

6

6

所以(1011.11011)B=(13.66)Q

1011

1101

1000

B

D

8

所以(1011.11011)B=(B.D8)H

(4)

(101101.0111)B=1*2^5+1*2^3+1*2^2+1*2^0+1*2^-2+1*2^-3+1*2^-4=(45.4375)D

101

101.

011

100

5

5

3

4

所以(101101.0111)B=(55.34)Q

0010

1101

0111

2

D

7所以(101101.0111)B=(2D.7)H

十進制二進制十六進制八進制000000010001112001022300113340100445010155601106670111778100081091001911101010A12111011B13121100C14131101D15141110E16151111F17BCD整數BCD整數(BinaryCodedDecimal)稱為“二進制編碼的十進制整數”,使用4個二進位表示1個十進制數字。例如:(43)BCD=

0100

0011(59601)BCD=

0101

1001

0110

0000

0001小結進制二進制、十進制、八進制、十六進制進制之間的轉換二-十轉換(系數*權的總合)十-二轉換(除二取余、乘二取證)二-八轉換(1個8進制位對應3個二進制位)二-十六轉換(1個16進制位對應4個二進制位)其他轉換BCD數6.1.4

二進制數

在計算機內的表示計算機中的數值信息分類整數和實數:它們都是用二進制表示的,但表示方法有很大差別。整數的概念整數不使用小數點,或者說小數點始終隱含在個位數的右面整數的分類:不帶符號的整數(unsignedinteger),一定是正整數 取值范圍: 8位0~255(28-1), 16位0~65535(216-1),

32位0~232-1帶符號的整數(signedinteger),既可表示正整數,又可表示負整數。無符號整數的表示采用“自然碼”表示:取值范圍由位數決定:8位: 可表示0~255(28-1)范圍內的所有正整數16位: 可表示0~65535(216-1)范圍內的所有正整數n位: 可表示0~2n-1范圍內的所有正整數。十進制數8位無符號整數

000000000

100000001

200000010

300000011

400000100

50000010125211111100253111111012541111111025511111111······帶符號整數的表示(1)符號如何表示? 用最高位表示,“0”表示正號(+),“1”表示負號(-)數值部分如何表示?

(1)原碼表示: 整數的絕對值以二進制自然碼表示

(2)補碼表示: 正整數:絕對值以二進制自然碼表示 負整數:絕對值使用補碼表示帶符號數的表示方法:用1位表示符號,其余用來表示數值部分···符號位數值部分最低位最高位舉例:

[+43]的8位原碼為:

00101011[-43]的8位原碼為:

10101011負數的絕對值如何用補碼表示?先表示為自然碼將自然碼的每一位取反碼在最低位加“1”例1:[-43]用8位補碼表示所以:[-43]

的8位補碼為:11010101例2:[-64]用8位補碼表示所以:[-64]

的8位補碼為:1100000043=>0101011取反:1010100加1:101010164=>1000000取反:0111111加1:1000000“各位取反,末尾加1”原碼和補碼的特點原碼表示法優點:與日常使用的十進制表示方法一致,簡單直觀缺點:加法與減法運算規則不統一,增加了成本;兩個機器0:“00000000”、“10000000”,不方便運算補碼表示法優點:加法與減法運算規則統一,沒有“-0”,可表示的數比原碼多一個缺點:不直觀,人使用不方便結論:帶符號整數在計算機內不采用“原碼”而采用“補碼”的形式表示!表數范圍原碼可表示的整數范圍8位原碼:-27+1~27-1(-127~127)16位原碼:-215+1~215-1(-32767~32767)n位原碼:-2n-1+1~2n-1-1補碼可表示的整數范圍

8位補碼:-27~27-1

(-128~127)

n位補碼:-2n-1~2n-1-1-128表示為10000000+127表示為01111111小結:3種整數的比較8位二進制碼表示無符號整數時的數值表示帶符號整數(原碼)時的值表示帶符號整數(補碼)時的值0000000000000000001111……………………0111111112712712710000000128-0-12810000001129-1-127……………………11111111255-127-1

計算機中整數有多種,同一個二進制代碼表示不同類型的整數時,其含義(數值)可能不同一個代碼它到底代表哪種整數(或其它東西),是由指令決定的實數(浮點數)的表示實數:既有整數部分又有小數部分的數。任何一個實數總可以表達成一個乘冪和一個純小數之積,例如:

56.725=102×(0.56725)-0.0034756=10-2×(-0.34756)指數部分指出實數中小數點的位置,括號里是一個純小數。二進制數的情況完全類同,例如:1001.011=2100×(0.1001011)-0.0010101=2-10×(-0.10101)浮點表示法:計算機內部表示實數的方法。實數=尾數*2指數實數N可表示為:

N=±S×2±P(0<S<1)需要表示一個實數時,只需要表示出它的尾數部分和指數部分即可。其中:尾數是一個純小數指數是一個整數,注意:在這里,指數編碼被稱作階碼。實數(浮點數)的表示16位機器數能夠表示的實數的范圍:(溢出 離散)011111

1111111111——

011111

0111111111(原碼)最小值最大值–(1–2-9)×225-1———(1–2-9)×225-1階碼符號位尾數符號位階碼值的編碼尾數值的編碼151410980實數(浮點數)的表示浮點數的長度可以是32位、64位或更長。一般說來,位數越多,可表示的數的范圍越大(階碼),精度越高(尾數)浮點數(實數)分類:短浮點數、浮點數、長浮點數、高精度浮點數6.1.5常用的信息編碼——字符(字母、數字和常用標點符號等)編碼字符、字符集及其碼表文字的基本元素是字母和符號,統稱為“字符”(character),它包括:字母、數字、符號等字符集:一組特定字符的集合不同的字符集包含的字符數目與內容不同,如:中文字符集、西文字符集、日文字符集等字符的編碼:字符集中每個字符都使用二進位(bit)表示,稱為該字符的編碼不同的字符其編碼各不相同字符集中所有字符的編碼的一覽表,稱為該字符集的碼表西文字符的編碼——ASCII碼西文是表音文字(拼音文字),它由拉丁字母、數字、標點符號以及一些特殊符號所組成美國標準信息交換碼(AmericanStandardCodeforInformationInterchange,簡稱ASCII碼):ASCII字符集包含96個可打印字符和32個控制字符采用7個二進位進行編碼計算機中使用1個字節存儲1個ASCII字符ASCII碼的問題7位代碼空間太小表1-6ASCII碼表b3b2b1b0位b6b5b4位[注:()內為ASCII碼的十進制數)]000(00~15)001(16~31)010(32~47)011(48~63)100(64~79)101(80~95)110(96~111)111(112~127)0000NULDLESP0@P`p0001SOHDC1!1AQaq0010STXDC2“2BRbr0011ETXDC3#3CScs0100EOTDC4$4DTdt0101ENQNAK%5EUeu0110ACKSYN&6FVfv0111BELETB‘7GWgw1000BSCAN(8HXhx1001HTEM)9IYiy1010LFSUB*:JZjz1011VTESC+;K[k{1100EFFS,<L\l|1101CRGS-=M]m}1110S0RS.>N^n~1111S1US/?O_oDel6.1.6漢字編碼輸入碼機內碼字形碼漢字如何編碼?漢字系統必須包括以下功能模塊:漢字輸入、漢字存儲、漢字處理、漢字輸出先對應的漢字編碼有:輸入碼——用于漢字輸入機內碼——用于存儲、處理漢字輸出碼——用于顯示漢字,如宋體、楷體等字形碼1、漢字的輸入碼英文字母的輸入方式——鍵盤與字母對應,該方式不適合漢字。因鍵盤按鍵數有限,漢字必須采用編碼的方式輸入輸入編碼方法分類數字編碼——國際碼、電報碼字形編碼——五筆字形嗎、表形碼字音編碼——拼音碼形音結合編碼——快速碼、自然碼2、漢字的機內碼以GB2312-80為基礎的機內碼,所有基本圖形和字符編碼為16位(2字節)。GB2312-80包含:常用圖形、符號682個一級漢字:按拼音順序排列,是最常用的漢字二級漢字:按偏旁部首排列所有圖形字符排在一張94*94的信息交換編碼表中——區位表求漢字機內碼的步驟為:區位碼→國際碼→機內碼一級漢字(3755個)二級漢字(3008個)(擴充使用)字母、數字和各種符號 ………………19423位號…………191655568794區號(按漢語拼音排列)(按偏旁部首排列)一、區位碼根據漢字在表中的位置得到其區位碼,如:字符“啊”位于第16行1列,其區位碼是1601,轉換成二進制為:0001000000000001B,用十六進制表示為:1001H拉丁字母、俄文、日文平假名與片假名、希臘字母、漢語拼音等共682個共6763個漢字和682個符號,每個漢字或符號都有一個

溫馨提示

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

評論

0/150

提交評論