Tel:13392986180
Email:elt2024@163.com
現(xiàn)代信息社會中已經(jīng)離不開計算機,對于計算機的工作原理,大部分人可能不太了解。計算機所能處理的數(shù)據(jù)、信息在計算機中都是以數(shù)字編碼形式表示的。那么這些數(shù)字編碼是以什么形式表示的、與日常表示的數(shù)有何區(qū)別、相互之間如何轉換?字母、符號又如何表示等等,下面我們一起了解和學習一下。關于計算機中的數(shù)制,數(shù)制的概念。
1 、十進制數(shù)
十進制數(shù)用0、1、2、3、4、5、6、7、8、9十個數(shù)字表示。十進制數(shù)的特點是逢十進一。例如十進制數(shù)5067可以用如下數(shù)學式表示:5067=5×103+0×102+6×101+7×100。
一個n位十進制數(shù)ala2a3…an,可以表示為:
a1×10n-1+a2×10n-2+…+an×100
這里的10n-1,10n-2…100稱為該位上的權。相鄰兩位中高位的權與低位的權之比稱為基數(shù),所以十進制數(shù)的基數(shù)為10。
2 、二進制數(shù)
基數(shù)為2的計數(shù)制稱為二進制。二進制數(shù)用0、1兩個數(shù)字表示。二進制數(shù)的特點是逢二進一。
一個n位二進制數(shù)ala2a3…an可以表示為:N=(a1a2a3…an)2
N為這個二進制數(shù)所代表的十進制數(shù)的值。把二進制數(shù)按權展開求和所得到的值即為這個二進制數(shù)代表的十進制數(shù)的值。
N=a1×2n-1+a2×2n-2+a3×2n-3+…+an×20
例如,二進制數(shù)11011按權展開為:
(11011)2=1×24+1×23+0×22+1×21+1×20=(27)10
所以二進制數(shù)11011代表的十進制數(shù)為27。
二進制數(shù)的運算規(guī)則為:
①加法 0+0=0 0+1=1 1+0=1 1+1=0(有進位)
②減法 0-0=0 0-1=1(有借位) 1-0=1 1-1=0
⑨乘法 0×0=0 0×1=0 1×0=0 1×1=1
④除法 0÷1=0 1÷1=1
與十進制數(shù)的數(shù)學式相比,二進制數(shù)的基數(shù)為2,二進制數(shù)的權值變化為2n-1,2n-2,2n-3,…,20。
3 、十六進制數(shù)
基數(shù)為16的計數(shù)制稱為十六進制。十六進制數(shù)用O、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F(大小寫字母均可)表示。其中,A、B、C、D、E、F分別表示十進制數(shù)10、11、12、13、14、15。十六進制數(shù)的特點是逢十六進一。
一個n位十六進制數(shù)ala2a3…an可以表示為: N=(a1a2a3…+an)16
例如,十六進制數(shù)A2F按權展開為:
(A2F)16=A×162+2×161+F×160=10×162+2×161+15×160=(2607)10
所以十六進制數(shù)A2F代表的十進制數(shù)為2607。
十六進制數(shù)的權值變化為16n-1,16n-2,16n-3,…,160。
二進制數(shù)與十進制數(shù)、十六進制數(shù)之間的對應關系如下表所示。
計算機中各種數(shù)制間的相互轉換如下:
A、十進制數(shù)轉換為二進制數(shù)
整數(shù)部分:用除2取余的方法轉換,先余為低,后余為高;
小數(shù)部分:用乘2取整的方法轉換,先整為高,后整為低。
例如,把十進制數(shù)18.6875轉換為二進制數(shù),可以用以下方法:
整數(shù)部分:用“除2取余法”先求出與整數(shù)18對應的二進制數(shù)。
B、十進制數(shù)轉換為十六進制數(shù)
整數(shù)部分:用除16取余的方法轉換,先余為低,后余為高;
小數(shù)部分:用乘16取整的方法轉換,先整為高,后整為低。
例如,把十進制數(shù)1023轉換為十六進制數(shù),可以用以下方法:
C、 十六進制數(shù)轉換為二進制數(shù)
將十六進制數(shù)轉換成二進制數(shù)的方法是:將每一位十六進制數(shù)用四位二進制數(shù)表示,即可得到相應的二進制數(shù)。
例如:將十六進制數(shù)4C3F轉換成二進制數(shù):
由以上例題可見,從二進制數(shù)很容易直接寫成十六進制數(shù),比用十進制數(shù)表示方便得多。
關于計算機中數(shù)的表示:
在十進制數(shù)中,可以在數(shù)字前面加上“+”、“-”號來表示正負數(shù),顯然,計算機不能直接識別“+”、“-”號,那么可以用“0”來表示“+”,用“1”來表示“-”,這樣數(shù)的符號也可以數(shù)字化了。
在計算機中,通常將二進制數(shù)的首位(最左邊那一位)作為符號位,若二進制數(shù)是正的則其首位是0,二進制數(shù)是負的則首位是1。像這種符號也數(shù)碼化的二進制數(shù)稱為“機器數(shù)”,原來帶有“+”、“-”號的數(shù)稱為“真值”。例如:
十進制 +67 -67
二進制(真值) +1000011 -1000011
計算機內(機器數(shù)) 01000011 11000011
機器數(shù)在機內也有三種不同的表示方法,這就是原碼、反碼和補碼。
(1)原碼
用首位表示數(shù)的符號,0表示正,1表示負,其他位則為數(shù)的真值的絕對值,這樣表示的數(shù)就是數(shù)的原碼。
例如: X=(+105) [X]原=(01101001)2
Y=(-105) [Y]原=(11101001)2
0的原碼有兩種,即 [+0]原=(00000000)2
[-0]原=(10000000)2
原碼簡單易懂,與真值轉換起來很方便。但若是兩個異號的數(shù)相加或兩個同號的數(shù)相減就要做減法,就必須判別這兩個數(shù)哪一個絕對值大,用絕對值大的數(shù)減去絕對值小的數(shù),運算結果的符號就是絕對值大的那個數(shù)的符號,這些操作比較麻煩,運算的邏輯電路實現(xiàn)起來較復雜。于是,為了將加法和減法運算統(tǒng)一成只做加法運算就引進了反碼和補碼。
(2)反碼
反碼使用得較少,它只是補碼的一種過渡。
正數(shù)的反碼與其原碼相同,負數(shù)的反碼是這樣求得的:符號位不變,其余各位按位取反,即0變?yōu)?,1變?yōu)?。例如:
[+65]原=(01000001)2 [+65]反=(01000001)2
[-65]原=(11000001)2 [-65]反=(1011lllO)2
很容易驗證:一個數(shù)反碼的反碼就是這個數(shù)本身。
(3)補碼
正數(shù)的補碼與其原碼相同,負數(shù)的補碼是它的反碼加1,即求反加1。例如:
[+63]原=(00111111)2 [+63]反=(00111111)2 [+63]補=(00111111)2
[-63]原=(101111l1)2 [-63]反=(11000000)2 [-63]補=(11000001)2
同樣也很容易驗證:一個數(shù)的補碼的補碼就是其原碼。
引入了補碼以后,兩個數(shù)的加減法運算就可以統(tǒng)一用加法運算來實現(xiàn),此時兩數(shù)的符號位也當成數(shù)值直接參加運算,并且有這樣一個結論,即兩數(shù)和的補碼等于兩數(shù)補碼的和。所以在計算機系統(tǒng)中一般采用補碼來表示帶符號的數(shù)。
關于計算機中信息的編碼:
從本質上說計算機只“認識”兩個數(shù)字,這就是1和0。在計算機內部,無論是運算處理的數(shù)據(jù)、發(fā)出的控制指令、數(shù)據(jù)存放的地址,還是通信時傳輸?shù)臄?shù)據(jù)都是二進制數(shù)。那么計算機為什么會這么“神奇”,這么功能強大呢?原來,計算機計算的數(shù)、處理的字母符號、漢字、圖形、圖像、聲音都必須按一定規(guī)則變成二進制數(shù),這就是說,任何數(shù)據(jù)要交給計算機處理都必須用二進制數(shù)字1和0表示,這一過程就是數(shù)據(jù)的編碼。
一、BCD碼
人們已習慣了十進制數(shù),而計算機只使用二進制數(shù),為了直觀和方便起見,在計算機輸入和輸出時另外規(guī)定了一種用二進制編碼表示十進制數(shù)的方式,即每一位十進制數(shù)數(shù)字對應4位二進制數(shù)編碼,這種編碼稱為BCD碼(Binary Coded Decimal二進制編碼的十進制數(shù))或稱為8421碼。此處所述的8421是這4位二進制數(shù)的權,lO個十進制數(shù)字對應的BCD碼見下表所示。
注意:BCD碼僅在形式上將十進制數(shù)變成了由1和0組成的二進制形式,實質上它還是表示十進制數(shù),只不過每位十進制數(shù)用4位二進制數(shù)編碼罷了,其運算規(guī)則和數(shù)值大小都是十進制的。
例如,設有一序列01100101。
將它理解成二進制數(shù)時,對應的十進制數(shù)是:
0×27+1×26+1×25+0×24+0×23+1×22+0×21+1×20=64+32+4=1=(101)10
若將它理解成BCD碼,則對應的十進制數(shù)是65,因為前四位表示6,后四位表示5。
二、字符的編碼
前面所述的是數(shù)值數(shù)據(jù)的編碼,而計算機處理的另一大類數(shù)據(jù)是字符,各種字母和符號也必須用二進制。
數(shù)來編碼后才能交給計算機處理。目前,國際上通用的西文字符編碼是ASCII(American Standard Code for Information Interchange美國國家標準信息交換代碼),其碼表參見下表。
關于計算機中的信息單位:
1 、位(bit):一位二進制數(shù)(1或0)是計算機處理數(shù)據(jù)的最小單位,音譯為“比特”。
2、 字節(jié)(Byte):將8位二進制數(shù)放在一起就組成了一個字節(jié),音譯為“拜特”。字節(jié)是計算機內存儲數(shù)據(jù)的基本單位,字節(jié)簡記為B,1B=8bit。
常用的字節(jié)單位:1KB=1024B,1MB=1024KB,1GB=1024MB,1TB=1024GB
3 字(Word)和字長:計算機進行數(shù)據(jù)處理時,一次存取、加工、傳送的數(shù)據(jù)長度稱為一個字,一個字一般由若干字節(jié)組成。
計算機一次能處理的二進制位數(shù)的多少稱為計算機的字長,字長決定了計算機處理數(shù)據(jù)的速率。顯然,字長越長,速度越快,所以字長是衡量計算機性能的一個重要標志。
我們是珠海艾麗得科技有限公司,專業(yè)生產工業(yè)稱重控制儀表,配料控制器,總線稱重變送器,稱重AD模塊等,期待與您合作,共創(chuàng)美好未來。