自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

為什么計算機(jī)需要十六進(jìn)制?

開發(fā) 前端
在十進(jìn)制中你必須知道所有的進(jìn)位上的數(shù)字后才可以將其轉(zhuǎn)為二進(jìn)制,這非常不直觀,顯然如果你想把復(fù)雜的十進(jìn)制數(shù)字轉(zhuǎn)為二進(jìn)制不稍加計算是搞不定的。

大家好,我是小風(fēng)哥,今天簡單聊聊十六進(jìn)制。

實(shí)際上計算機(jī)本身是不需要十六進(jìn)制的,計算機(jī)只需要二進(jìn)制,需要十六進(jìn)制的是人。

每個十六進(jìn)制中的數(shù)字代表4個比特,你可以非常直觀的從十六進(jìn)制中知道對應(yīng)的二進(jìn)制是啥,比如給定一個十六進(jìn)制數(shù),假設(shè)其最后一位是9,那么你立刻就能知道將該十六進(jìn)制數(shù)字轉(zhuǎn)為二進(jìn)制后最后四位是1001:

  • 十六進(jìn)制數(shù)字9對應(yīng)的二進(jìn)制為1001。
  • 十六進(jìn)制數(shù)字19對應(yīng)的二進(jìn)制為1 1001。
  • 十六進(jìn)制數(shù)字119對應(yīng)的二進(jìn)制為1 0001 1001

但是如果給定一個十進(jìn)制數(shù)字,同樣假設(shè)其最后一位是9,你知道其對應(yīng)的二進(jìn)制嗎,顯然你是不知道的。

  • 十進(jìn)制數(shù)字9對應(yīng)的二進(jìn)制為1001。
  • 十進(jìn)制數(shù)字19對應(yīng)的二進(jìn)制為1 0011。
  • 十進(jìn)制數(shù)字119對應(yīng)的二進(jìn)制為111 0111。

在十進(jìn)制中你必須知道所有的進(jìn)位上的數(shù)字后才可以將其轉(zhuǎn)為二進(jìn)制,這非常不直觀,顯然如果你想把復(fù)雜的十進(jìn)制數(shù)字轉(zhuǎn)為二進(jìn)制不稍加計算是搞不定的。

因此我們可以得出結(jié)論:

十六進(jìn)制是二進(jìn)制的好朋友,但十進(jìn)制不是

那為什么十六進(jìn)制是二進(jìn)制的好朋友呢?

關(guān)鍵在于進(jìn)制數(shù)16是2的4次方,2^4 = 16,而進(jìn)制數(shù)10并不是2的整數(shù)次冪,因此8進(jìn)制(2^3),16進(jìn)制(2^4),32進(jìn)制(2^5),64進(jìn)制(2^6)等等都是二進(jìn)制的好朋友。

有的同學(xué)肯定會問,那么為什么我們不使用32進(jìn)制呢?

使用32進(jìn)制,每5個比特位可以用一個32進(jìn)制數(shù)字來表示,由于人類的數(shù)字系統(tǒng)只有0~9,因此在16進(jìn)制中10是字母a來表示的、11:b、12:c、13:d、14:e、15:f,但如果我們使用32進(jìn)制,那么16:g、17:h.......31:v,這時給一個32進(jìn)制數(shù)字“apple”,你的大腦可能會一團(tuán)漿糊,但十六進(jìn)制對人類來說基本可以應(yīng)付得來,原因就在于16進(jìn)制中人類熟悉的數(shù)字占據(jù)了10個,剩下的只借用了6個字母,還算簡單。

因此32進(jìn)制及以上都不太適合給人使用,原因就在于:

可讀性太差。

此外使用十六進(jìn)制還有一個重要原因:

一個字節(jié)有8個比特

我們知道內(nèi)存是按照字節(jié)粒度來尋址的,因此采用的數(shù)字系統(tǒng)必須很好的表達(dá)一個字節(jié),也就是8比特,從這個角度上看256進(jìn)制(2^8)是最好的,因?yàn)橐粋€256進(jìn)制就是表達(dá)一個字節(jié),但還是基于可讀性的原因,256進(jìn)制對于人類來說記憶負(fù)擔(dān)過重,而16進(jìn)制則剛剛好,一個16進(jìn)制數(shù)字表示一個字節(jié)的一半(4個比特),兩個16進(jìn)制數(shù)字正好表示一個字節(jié)。

那為什么一個字節(jié)有8比特而不是7比特或者9比特呢?其實(shí)答案很簡單:

歷史原因

要知道早期的計算機(jī)可不是一個字節(jié)8比特,那時一個字節(jié)4比特、6比特或者7比特的都有。

但4比特或者6比特還是太受限制,因?yàn)槲覀冃枰炎帜笖?shù)字以及標(biāo)點(diǎn)符號等等轉(zhuǎn)為二進(jìn)制表示,4比特或6比特能表示的數(shù)量太少。

到了1963年,ASCII正式提出,該標(biāo)準(zhǔn)使用7比特來表示字符,但當(dāng)時的IBM System/360大型機(jī)采用了8比特字節(jié),使得8比特字節(jié)開始流行起來,到后來微型計算機(jī)出現(xiàn)時也自然采用了這一表示方法。

現(xiàn)在你應(yīng)該明白了吧。

責(zé)任編輯:武曉燕 來源: 碼農(nóng)的荒島求生
相關(guān)推薦

2009-08-28 10:55:16

C#實(shí)現(xiàn)轉(zhuǎn)換十六進(jìn)制

2011-12-01 10:55:16

超級計算機(jī)高性能計算Top500

2020-12-14 08:00:31

計算機(jī)計數(shù)程序

2012-12-16 15:26:49

超級計算機(jī)LinuxHPC

2020-08-31 14:56:24

補(bǔ)碼存儲數(shù)據(jù)

2022-12-25 15:56:30

JavaScript字符串

2019-03-13 13:20:26

Linux十六進(jìn)制編輯器

2020-04-06 14:45:22

云計算邊緣計算網(wǎng)絡(luò)

2023-07-07 10:53:08

2023-05-30 18:32:31

計算機(jī)字節(jié)

2013-07-25 15:01:47

iOS開發(fā)學(xué)習(xí)十六進(jìn)制和字符串轉(zhuǎn)換

2021-07-05 12:25:37

開源項(xiàng)目計算機(jī)專業(yè)貢獻(xiàn)代碼

2018-09-27 14:50:39

編程語言c語言計算機(jī)程序

2018-03-07 17:47:16

藍(lán)屏計算機(jī)死機(jī)

2015-04-09 10:21:23

ASCII碼表IP地址分類以太網(wǎng)幀

2012-03-31 09:59:22

2016-01-22 11:09:40

計算機(jī)圖形學(xué)虛擬現(xiàn)實(shí)三維建模

2023-09-04 15:15:17

計算機(jī)視覺人工智能

2020-05-12 09:39:32

計算機(jī)時間系統(tǒng)

2021-01-27 14:18:17

量子計算傳統(tǒng)計算量子機(jī)器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號