前言:想要寫出一篇引人入勝的文章?我們特意為您整理了計算機信息表示與編碼知識分析范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:計算機信息的表示與編碼一直是困擾初學者的一個難題,通過對計算機信息的表示、信息的單位、信息的編碼這三部分的深入探討和講解,讓初學者對計算機內(nèi)部原理有了一個啟發(fā)性的了解,為進一步學習計算機知識打下堅實基礎(chǔ)。
關(guān)鍵詞:信息表示;信息編碼;信息單位;內(nèi)部原理
引言
隨著計算機的流行和普及,各種類型的微型計算設(shè)備(pad、surface)已經(jīng)深入到各家各戶,越來越多的人加入到學習計算機知識、研究計算機原理的隊伍中來。學習計算機知識絕不僅僅是學習類似office那樣的簡單操作,而是需要研究計算機原理和軟硬件等知識。目前計算機的研究方向已經(jīng)十分細化,從大的方向上說,比如軟件、硬件、網(wǎng)絡(luò)、人工智能等等都是目前熱門的研究方向。以軟件為例,計算機的工作是通過軟件控制的,而軟件是用程序編寫的,程序是指令的集合,而指令就是計算機可以識別的命令,這些命令都是計算機中的控制信息和數(shù)據(jù)信息。歸根結(jié)底,我們首先要理解信息在計算機中是如何存儲和表示的。
1、信息的表示
計算機內(nèi)部的信息可以分成兩大類:數(shù)據(jù)信息和控制信息。數(shù)據(jù)信息是計算機程序加工的對象,包括數(shù)值信息(定點數(shù)和浮點數(shù)等)和非數(shù)值信息(圖像和聲音等)。控制信息是一些控制計算機操作的指令。無論是數(shù)據(jù)信息還是控制信息,在計算機中都是用二進制數(shù)據(jù)表示的。也可以說計算機中的數(shù)字系統(tǒng)是二進制系統(tǒng)。這種二進制表示法和我們平時習慣使用的十進制大不相同。二進制里面的數(shù)字只能由0和1構(gòu)成,進位原則是逢二進一。為什么在計算機中用二進制來表示數(shù)據(jù)呢?因為電路中最穩(wěn)定的狀態(tài)就是兩種狀態(tài),所以用著兩種狀態(tài)分別表示0和1最為恰當。因此在計算機中用二進制表示數(shù)據(jù)比較容易物理實現(xiàn)。另外二進制的數(shù)字運算更為簡單,因為只有兩個數(shù)字0和1。當然,二進制對于人來說可讀性比較差,因此在計算機高級語言的書寫中并不直接用二進制,而是要把源程序編譯以后得到二進制的機器語言。
2、信息的單位
上面已經(jīng)講到,計算機中所有的信息都是用二進制來表示的,雖然有時在編程的時候用八進制或者十六進制表示一些信息,但是在計算機中都會將這些進制數(shù)轉(zhuǎn)化成二進制表示,只是在展現(xiàn)的時候出現(xiàn)多樣化的信息。計算機中信息的單位和二進制也息息相關(guān)。信息存儲的最小單位就是位,一個位就是一個二進制位(0或1),用小寫字母b表示。由位可以組成字節(jié),在計算機中一個字節(jié)是由8個二進制位組成的,用大寫字母B表示。在計算機中表示文件大小或內(nèi)存大小的單位一般為KB,表示千字節(jié)。1KB=1024B,還有更大的單位兆字節(jié)即MB,1MB=1024K。更大的還有吉字節(jié)GB,以此類推,1GB=1024M。
3、信息的編碼表示
在計算機中的數(shù)據(jù)雖然是用二進制表示的,但絕不是僅僅將數(shù)據(jù)化為二進制數(shù)這么簡單,單就數(shù)字和運算來說,首先要對正號和負號做出不同的表示,這里正號和負號恰好可以用一位二進制數(shù)0和1來表示。這里我們用0代表正號,1代表負號。比如十進制25就可以表示為011001,而-25則可以表示為111001,可以看出,只有第一位不同,后面的相同。對于相同長度的二進制數(shù),在計算機中如果僅第一位不同,后面的所有位都相同,則可以斷定這兩個數(shù)符號不同,絕對值相同。在計算機中當需要對兩個數(shù)進行加減運算的時候,符號位0或1要參與運算,這就帶來了一些麻煩,這里符號位要單獨處理才行。比如兩個數(shù)都是正數(shù)(符號位為0)則結(jié)果的符號位也為0,兩個數(shù)都是負數(shù)(符號位為1)則結(jié)果的符號位也為1。倘若兩個數(shù)符號位相反即一個是正數(shù),一個是負數(shù)的話,則需要比較兩個數(shù)的絕對值大小才能判斷結(jié)果的正負。這些判定用計算機硬件實現(xiàn)是及其復(fù)雜的。另外還有一個方面就是用帶符號的二進制表示零會有兩種結(jié)果,即0000…0和1000…0,因為0可以看成是+0和-0,因此,在計算機中的信息不能夠直接用二進制表示。人們需要找出一種更好的編碼方法,使得運算起來能夠?qū)⒎栁灰黄疬\算還能得到正確的結(jié)果,這就引入了計算機之信息的存儲形式:補碼存儲。如何求出一個數(shù)字的補碼在許多計算機的教科書中都給與了充分的闡述,這里我們主要講解一下補碼的含義。正數(shù)的補碼還是原來的加上符號的二進制形式(也叫原碼)。負數(shù)的補碼則要通過“模數(shù)的概念來理解”。我們知道,對于鐘表,12是一個循環(huán),過了12就又從1開始數(shù)了。如果我們的手表上指的是8點,而標準時間是6點,我們就可以向后撥兩個格,也可以向前撥10個格,都可以達到同樣的效果。也就是說對于模數(shù)12來說,2和10是互補的,一個數(shù)減去2和一個數(shù)加上10是一樣的,一個數(shù)減去10和一個數(shù)加上2也是一樣的。受此啟發(fā),在計算機中,如果A-B,那么我們可以把-B轉(zhuǎn)化成補碼,然后可以用A的補碼加上B的補碼來完成操作。限于篇幅,不再舉例。用補碼表示計算機信息有很多好處,首先是0的表示唯一了,不存在正零和負零之分;其次是符號位可以正常參與運算,最后仍然能夠得到正確的結(jié)果,無需單獨運算;還有就是用補碼進行運算時,減法運算可以轉(zhuǎn)換為加法運算。如果A-B,可以理解為A+(-B),簡化了硬件設(shè)計的難度。
4、總結(jié)與展望
計算機中信息的表示和編碼是學習理解計算機工作原理的基礎(chǔ),也是計算機初學者學習計算機的第一道攔路虎,許多計算機畢業(yè)生直到本科畢業(yè)對于信息的編碼表示也是一知半解,影響到了他們對于計算機理論的后續(xù)學習。本文通俗地講解了計算機中數(shù)據(jù)的表示方法和編碼原理,并用例子加以形象說明,初學者深刻理解這些內(nèi)容對于進一步學習計算機理論知識有著莫大的好處。
作者:曹摯 單位:徐州幼兒師范高等專科學校