- 計算機應(yīng)用基礎(chǔ)(Windows 7+Office 2010)
- 趙幫華 湯東主編
- 4989字
- 2020-04-30 19:02:47
1.2 計算機中信息的表示
計算機要處理的內(nèi)容是多種多樣的,如數(shù)字、文字、符號、圖形、圖像和語言等。但是計算機無法直接“理解”這些內(nèi)容,所以在計算機內(nèi)部專門有一種表示信息的形式。
1.2.1 信息和數(shù)據(jù)
(1)信息和數(shù)據(jù)的概念
信息是指現(xiàn)實世界事物的存在方式或運動狀態(tài)的反應(yīng)。信息具有可感知性、可存儲性、可加工性、可傳遞性和可再生性等自認屬性。
信息處理是指信息的收集、加工、存儲、傳遞及使用過程。
數(shù)據(jù)是對客觀事物的符號表示。數(shù)值、文字、語言、圖形、圖像等都是不同形式的數(shù)據(jù)。
信息和數(shù)據(jù)這兩個概念既有聯(lián)系又有區(qū)別。數(shù)據(jù)是反映客觀事物屬性的記錄,是信息的具體表現(xiàn)形式或載體;信息是數(shù)據(jù)的語義解釋,是數(shù)據(jù)的內(nèi)涵。數(shù)據(jù)經(jīng)過加工處理之后,就成為信息;而信息需要經(jīng)過數(shù)字化轉(zhuǎn)變成數(shù)據(jù)才能存儲和傳輸。數(shù)據(jù)是數(shù)據(jù)采集時提供的,信息是從采集的數(shù)據(jù)中獲取的有用信息。
(2)計算機中的信息
計算機內(nèi)部均采用二進制來表示各種信息,但計算機與外部交互仍采用人們熟悉和便于閱讀的形式,如十進制數(shù)、文字、聲音、圖形圖像等,其間的轉(zhuǎn)換則由計算機系統(tǒng)的硬件和軟件來實現(xiàn)。那么在計算機內(nèi)部為什么要用二進制來表示各種信息呢?主要有以下幾個方面的原因。一是電路簡單,易于表示。計算機是由邏輯電路組成的,邏輯電路通常只有兩個狀態(tài)。例如開關(guān)的接通和斷開,電壓的高與低等。這兩種狀態(tài)正好用來表示二進制的兩個數(shù)碼0和1。若是采用十進制,則需要有十種狀態(tài)來表示十個數(shù)碼,實現(xiàn)起來比較困難。二是可靠性高。兩種狀態(tài)表示兩個數(shù)碼,數(shù)碼在傳輸和處理中不容易出錯,因而電路更加可靠。三是運算簡單。二進制數(shù)的運算規(guī)則簡單,無論是算術(shù)運算還是邏輯運算都容易進行。四是邏輯性強。計算機不僅能進行數(shù)值運算而且能進行邏輯運算。邏輯運算的基礎(chǔ)是邏輯代數(shù),二進制的兩個數(shù)碼1和0,恰好代表邏輯代數(shù)中的“真”和“假”。
(3)計算機中的數(shù)據(jù)單位
計算機中數(shù)據(jù)最小的單位是位,存儲容量的基本單位是字節(jié),除此之外還有千字節(jié)、兆字節(jié)、吉字節(jié)等。
① 位(bit) 位是數(shù)據(jù)的最小單位,用來表示存放的一位二進制數(shù),即0或1。在計算機中,采用多個數(shù)字(0和1的組合)來表示一個數(shù)時,其中的每一個數(shù)字稱為1位。
② 字節(jié)(Byte) 字節(jié)是計算機表示和存儲信息的最常用、最基本單位。1個字節(jié)由8位二進制數(shù)組成,即1Byte=8bit。
比字節(jié)表示的存儲空間更大的有千字節(jié)、兆字節(jié)、吉字節(jié)等,不同數(shù)據(jù)單位之間的換算關(guān)系為:
字節(jié)B 1Byte=8bit
千字節(jié)kB 1kB=1024B=210B
兆字節(jié)MB 1MB=1024kB=1024×1024B
吉字節(jié)GB 1GB=1024MB=1024×1024kB
太字節(jié)TB 1TB=1024GB=1024×1024MB
③ 字長 人們將計算機一次能夠并行處理的二進制位稱為該機器的字長。字長直接關(guān)系到計算機的精度、功能和速度,是計算機的一個重要指標(biāo),字長越長,處理能力就越強。計算機型號不同,其字長也不同,通常字長是字節(jié)的整數(shù)倍,如8位、16位、32位、64位等。
1.2.2 進位計數(shù)制及其轉(zhuǎn)換
在日常生活中,最常使用的是十進制數(shù),而計算機內(nèi)部在進行數(shù)據(jù)處理時,使用的是二進制數(shù),由于二進制表示數(shù)時書寫較長,有時為了理解和書寫方便也用到八進制和十六進制,但它們最終都要轉(zhuǎn)化成二進制數(shù)后才能在計算機內(nèi)部進行加工和處理。
(1)進位計數(shù)制
進位計數(shù)制是利用固定的數(shù)字符號和統(tǒng)一的規(guī)則來計數(shù)的方法。計算機中常見的有十進位計數(shù)制、二進位計數(shù)制、八進位計數(shù)制、十六進位計數(shù)制等。
一種進位計數(shù)制包含一組數(shù)碼符號和三個基本因素。
數(shù)碼:一組用來表示某種數(shù)制的符號。例如,十進制的數(shù)碼是0、1、2、3、4、5、6、7、8、9;二進制的數(shù)碼是0、1。
基數(shù):某數(shù)制可以使用的數(shù)碼個數(shù)。例如,十進制可以使用的數(shù)碼有10個,基數(shù)為10;二進制可以用的數(shù)碼只有0和1兩個,基數(shù)為2。
數(shù)位:數(shù)碼在一個數(shù)中所處的位置(小數(shù)點左側(cè)的第一位為0開始)。
權(quán):權(quán)是以基數(shù)的底,數(shù)位為指數(shù)的整數(shù)次冪,表示數(shù)碼在不同位置上的數(shù)值。
例如:十進制12670中,數(shù)碼6的數(shù)位是2,權(quán)是102。
表1-2中十六進制的數(shù)碼除了十進制的10個數(shù)字符號外,還使用了6個英文字母:A,B,C,D,E,F(xiàn)。它們分別等于十進制的10,11,12,13,14,15。
表1-2 計算機中常用的幾種進位計數(shù)制的表示
表1-3是十進制0~15與等值的二進制、八進制、十六進制的對照表。可以看出采用不同進制表示同一數(shù)時,基數(shù)越大,則使用的位數(shù)越少。比如十進制10,需要4位二進制來表示,只需要2位八進制、1位十六進制來表示。這也是為什么在程序書寫中一般采用八進制或十六進制表示數(shù)據(jù)的原因。
(2)常用進制之間的轉(zhuǎn)換
① N進制轉(zhuǎn)換為十進制 在十進制數(shù)中1234可以表示為以下多項式:
(1234)10=1×103+2×102+3×101+4×100
式中,103、102、101、100是各個數(shù)碼的權(quán),可以看出將各個位置上的數(shù)字乘上權(quán)值再求和就可以得到這個數(shù)。所以,將N進制數(shù)按權(quán)展開再求和就可以得到對應(yīng)的進制數(shù),這就是將N進制數(shù)轉(zhuǎn)換為十進制數(shù)的方法。
表1-3 不同進制數(shù)的對照表
例如:
(10111)2 =1×24+0×23+1×22+1×21+1×20
=16+0+4+2+1
=(23)10
(217)8 =2×82+1×81+7×80
=128+8+7
=(143)10
(6C)16 =6×161+12×160
=96+12
=(108)10
如果一個N進制中既有整數(shù)部分又有小數(shù)部分,仍然可按權(quán)展開求和將其轉(zhuǎn)換成對應(yīng)的十進制數(shù)。
例如:
(1011.11)2 =1×23+0×22+1×21+1×20+1×2-1+1×2-2
=8+2+1+0.5+0.25
=(11.75)10
② 十進制數(shù)轉(zhuǎn)換為N進制數(shù) 將十進制數(shù)轉(zhuǎn)換為N進制數(shù)時由于整數(shù)部分和小數(shù)部分采用不同的方法,所以可以將整數(shù)和小數(shù)分開轉(zhuǎn)換后再連接起來即可。
a.整數(shù) 將一個十進制整數(shù)轉(zhuǎn)換為N進制整數(shù)可以采用“除基取余”法,即將十進制整數(shù)連續(xù)的除以N進制數(shù)的基數(shù)取余數(shù),直到商為0為止,最先取得的余數(shù)放在最右邊。
【例1】將十進制整數(shù)125分別轉(zhuǎn)換為二進制數(shù)和八進制數(shù)。
(125)10=(7D)16
(125)10=(1111101)2
b.小數(shù) 將一個十進制小數(shù)數(shù)轉(zhuǎn)換為N進制小數(shù)采用“乘基取整”法,即將十進制小數(shù)不斷地乘以N進制數(shù)的基數(shù)取整數(shù),直到小數(shù)部分為0或達到精度要求為止(存在小數(shù)部分永遠不會達到0的情況),取得的整數(shù)從小數(shù)點之后自左往右排列,取有效精度,最先取得的整數(shù)放在最左邊。
【例2】將十進制小數(shù)0.625轉(zhuǎn)換成二進制數(shù)。
(0.625)10=(0.101)2
【例3】將十進制數(shù)147.16轉(zhuǎn)換成八進制數(shù),要求精確到小數(shù)點后4位。
(147.16)10=(223.1217)8
③ 二進制數(shù)與八進制數(shù)、十六進制數(shù)的相互轉(zhuǎn)換 信息在計算機內(nèi)部都用二進制數(shù)來表示,但二進制的位數(shù)比較長,比如一個十進制數(shù) 128,用等值的二進制數(shù)來表示就需要8位,書寫和識別起來很不方便也不直觀。而八進制和十六進制數(shù)比二進制數(shù)就要短得多,同時二進制、八進制和十六進制之間存在特殊的關(guān)系:81=23;161=24,即1位八進制數(shù)相當(dāng)于3位二進制數(shù),1位十六進制數(shù)相當(dāng)于4位二進制數(shù),因此它們之間轉(zhuǎn)換也非常方便。在書寫程序或數(shù)據(jù)時往往采用八進制數(shù)或十六進制數(shù)形式來表示等值的二進制數(shù)。
如表1-3所示根據(jù)二進制數(shù)和八進制數(shù)、十六進制數(shù)之間的關(guān)系,將二進制數(shù)轉(zhuǎn)換為八進制數(shù)時,以小數(shù)點為起點向左右兩邊分組,每3位為一組,兩頭不足添0補齊3位(整數(shù)高位補0,小數(shù)低位補0對數(shù)的大小不會產(chǎn)生影響)。
例如:將二進制數(shù)(1011011.10111)2轉(zhuǎn)換成八進制數(shù):
( 001 011 011 . 101 110)2=(133.56)8
1 3 3 5 6
將二進制數(shù)轉(zhuǎn)換為十六進制數(shù)時,以小數(shù)點為起點向左右兩邊分組,每4位為一組,兩頭不足添0補齊4位。
例如:將二進制數(shù)(1011011.10111)2轉(zhuǎn)換成十六進制數(shù)。
(0101 1011 . 1011 1000)2=(3B.B8)16
3 B B 8
反過來,將八進制數(shù)或十六進制數(shù)轉(zhuǎn)換成二進制數(shù),只要將1位八進制數(shù)或者十六進制數(shù)對應(yīng)轉(zhuǎn)換為三位或者4位二進制數(shù)即可。例如:
(217.35)8=(010 001 111 . 011 101)2=(10001111.011101)2
2 1 7 3 5
(46E.A8)16=(0100 0110 1110.1010 1000)2=(10001101110.10101)2
4 6 E A 8
注意:整數(shù)部分的高位0和小數(shù)部分的低位0可以不寫。
1.2.3 計算機中非數(shù)值信息的表示
日常生活中需要計算機處理的信息是多種多樣的,如文字、聲音、圖片、符號、圖形等等,而計算機只能識別二進制數(shù),為了讓計算機能直接“讀懂”這些信息,我們需要將這些非數(shù)值信息采用數(shù)字化編碼的形式將其轉(zhuǎn)換為計算機能直接識別的“0”和“1”。非數(shù)值信息非常多,我們重點了解兩類非數(shù)值信息的編碼方式,一類是西文字符,一類是中文漢字。
(1)字符編碼
目前采用的字符編碼主要是ASCII碼,又叫美國信息交換標(biāo)準(zhǔn)碼(American National Standard Code for Information Interchange),是由美國國家標(biāo)準(zhǔn)學(xué)會制定的。它起始于上世紀50年代后期,在1967年定案。
ASCII碼使用指定的7位或8位二進制數(shù)組合來表示128或256種可能的字符,其中7位ASCII碼叫做標(biāo)準(zhǔn)ASCII碼,8位ASCII碼叫做擴展ASCII碼。標(biāo)準(zhǔn)ASCII碼用一個字節(jié)(8位)來表示一個字符,最高位為0,剩下的 7位二進制數(shù)共有27=128個不同的編碼,包括了0~9共10個數(shù)字、52個大小寫英文字母、32個標(biāo)點符號和運算符以及34個控制字符。常用字符的ASCII編碼見表1-4。
表1-4 標(biāo)準(zhǔn)ASCII碼表
從ASCII碼表可以看出,0~9,A~Z,a~z按照從小到大的順序排列,且小寫字母比它對應(yīng)的大寫字母的ASCII值大32。比如字符“a”的ASCII編碼是1100001,對應(yīng)的十進制數(shù)是97,則字符“b”的ASCII碼值就是98,字符“A”的ASCII碼就是65。
(2)漢字編碼
① 漢字編碼字符集 ASCII碼只對英文字母、數(shù)字、標(biāo)點符號、控制字符等進行了編碼,而計算機也需要處理、顯示、存儲漢字,因而對漢字字符也需要進行編碼。為了滿足國內(nèi)在計算機中使用漢字的需要,中華人民共和國國家標(biāo)準(zhǔn)化管理委員會發(fā)布了一系列的漢字字符集國家標(biāo)準(zhǔn)編碼,統(tǒng)稱為GB碼,或國標(biāo)碼。其中最有影響的是于1980年發(fā)布的《信息交換用漢字編碼字符集 基本集》,標(biāo)準(zhǔn)號為GB 2312—80,因其使用非常普遍,也常被通稱為國標(biāo)碼。
GB 2312是一個簡體中文字符集,由6763個常用漢字和682個全角的非漢字字符組成。其中漢字根據(jù)使用的頻率分為兩級:一級漢字3755個,按漢語拼音字母的次序排列;二級漢字3008個,按偏旁部首排列。由于字符數(shù)量比較大,GB 2312采用了二維矩陣編碼法對所有字符進行編碼。首先構(gòu)造一個94行94列的方陣,對每一行稱為一個“區(qū)”,每一列稱為一個“位”,然后將所有字符填寫到方陣中。這樣所有的字符在方陣中都有一個唯一的位置,這個位置可以用區(qū)號、位號合成表示,稱為字符的區(qū)位碼。如漢字“國”出現(xiàn)在第25區(qū)(行)的第90位(列)上,其區(qū)位碼為2590。因為區(qū)位碼同字符的位置是完全對應(yīng)的,因此區(qū)位碼同字符之間也是一一對應(yīng)的。這樣所有的字符都可通過其區(qū)位碼轉(zhuǎn)換為國標(biāo)碼。轉(zhuǎn)換的方法是將漢字的區(qū)位碼中的區(qū)號和位號分別轉(zhuǎn)換成十六進制數(shù),再分別加上20H,就得到了該漢字的國標(biāo)碼。如漢字“國”的區(qū)位碼是2590D,則其國標(biāo)碼為397AH。
GB 2312字符在計算機中存儲是以其區(qū)位碼為基礎(chǔ)的,其中漢字的區(qū)碼和位碼分別占一個存儲單元,每個漢字占兩個存儲單元。實際存儲時,將漢字的區(qū)位碼轉(zhuǎn)換成存儲碼進行存儲。
在我國臺灣、香港與澳門地區(qū),使用的是繁體漢字,而1980年發(fā)布的GB 2312面向簡體中文字符集,并不支持繁體漢字。為統(tǒng)一繁體字符集編碼,1984年臺灣五大廠商宏碁、神通、佳佳、零壹以及大眾一同制定了一種繁體中文編碼方案,因其來源被稱為五大碼,英文寫作Big5,后來按英文翻譯回漢字后,普遍被稱為大五碼。
② 漢字的幾種編碼 漢字從輸入、存儲處理到輸出都進行了不同方式的編碼,計算機對漢字的處理過程實際上就是漢字各種編碼間的轉(zhuǎn)換過程,這些編碼主要包括漢字輸入碼、漢字內(nèi)碼、漢字字形碼等。
a.漢字輸入碼 為通過鍵盤將漢字輸入計算機而編制的各種代碼叫做漢字輸入碼,也叫外碼。目前漢字輸入的編碼研究非常多,已多達數(shù)百種,主要包括拼音編碼和字型編碼。常用的微軟拼音、智能ABC、搜狗拼音等就是拼音編碼,五筆字型輸入法就是字型編碼。
b.漢字內(nèi)碼 也叫機內(nèi)碼,漢字內(nèi)碼是在設(shè)備和信息處理系統(tǒng)內(nèi)部存儲、處理、傳輸漢字用的代碼。一個漢字無論采用何種輸入碼,進入計算機后都會被轉(zhuǎn)化為機內(nèi)碼才能進行傳輸、處理。目前的規(guī)則是將國標(biāo)碼的高位字節(jié)、低位字節(jié)各自加上128D或80H。例如,“國”字的國標(biāo)碼是397AH,每個字節(jié)加上80H,“國”字的內(nèi)碼為B9FAH。這樣做的目的是使?jié)h字內(nèi)碼區(qū)別于西文的ASCII,因為每個西文字母的ASCII的高位均為0,而漢字內(nèi)碼的每個字節(jié)的高位均為1。
c.漢字字形碼 經(jīng)過計算機處理后的漢字信息,如果要顯示或者打印輸出就需要將漢字內(nèi)碼轉(zhuǎn)化為人們能識別的漢字,用于在顯示屏或打印機輸出的就是漢字字形碼,也稱為字模碼。通常用點陣、矢量表示。
用點陣表示時,字形碼指的就是這個漢字字形點陣的代碼。根據(jù)輸出漢字的要求不同,點陣的多少也不同。簡易型漢字為16×16點陣、普通型漢字為24×24點陣、提高型漢字為32×32點陣、48×48點陣等。如果是24×24點陣,每行24個點就是24個二進制位,存儲一行代碼需要3個字節(jié)。那么,24行共占用3×24=72個字節(jié)。計算公式:每行點數(shù)×行數(shù)/8。依此,對于48×48的點陣,一個漢字字形需要占用的存儲空間為48×48/8=288個字節(jié)。
- 流式系統(tǒng)
- WebGIS之Element前端組件開發(fā)
- Solaris 10系統(tǒng)管理
- 中文版Dreamweaver CC基礎(chǔ)培訓(xùn)教程(移動學(xué)習(xí)版)
- 計算機網(wǎng)絡(luò)及項目實踐
- Kubernetes實戰(zhàn):構(gòu)建生產(chǎn)級應(yīng)用平臺
- 綜合布線實訓(xùn)教程(第2版)
- 掌控你的工作!:巧用Outlook極速提升工作效率
- Google Plus First Look:a tip-packed,comprehensive look at Google+
- 交互式Web前端開發(fā)實踐
- 網(wǎng)頁設(shè)計與前端開發(fā)實用教程(Dreamweaver+CSS+Photoshop+JavaScript+HTML)
- JSP動態(tài)網(wǎng)站開發(fā)項目教程
- 劍指云端:引領(lǐng)企業(yè)IT未來的最佳實踐
- 華為云計算技術(shù)與應(yīng)用
- 地理信息系統(tǒng)應(yīng)用與實踐(第2版)