既然計算機只能識別二進位制0和1,為什麼要有八進位制和16進製制?

時間 2021-11-04 18:51:14

1樓:

你隨手寫乙個16進製制數就知道了,比如

5A4DE129

它的二進位制表示為

你覺得哪種寫法更簡單?

大家喜歡用16進製制是因為寫起來16進製制的數字短。好讀也好寫。而且很容易轉化為2進製。

2樓:summer

幾進製先於計算機就有的,是數學,密碼學領域的問題,計算機的出現也就是上世紀而已,目前的計算機主要是晶體二極體只能是非二進位制。據說蘇聯時代,發明了三進製的計算機。只是沒有得到商業普及,就沒有呈現發展起來。

3樓:四重選擇題

既然計算機只能識別二進位制0和1,為什麼要有八進位制和16進製制?有的人會說,是為了增加可讀性。但是為啥不用10進製呢。

無論2進製,8進製,16進製制,10進製,都是用來給人閱讀的,計算機只認高/低電平,不認數字。

由高/低電平可直接轉換成2進製數,但2進製數可讀性太低。10進製數具有最高的可讀性,但由高/低電平轉10進製數需要相當複雜的整除和求餘運算,效率低。8進製基本沒人用,暫且不談。

16進製制其實是2進製和10進製的乙個折中,高/低電平可以通過簡單的與運算直接轉換成16進製制數,且其又具有較高的可讀性,所以被廣泛使用。

在python 裡我對「你好」,進行UTF-8編碼,得到的是一串英文數字的組合碼,應該是16進製制,但是這種英文加數字的碼也不能被計算機識別啊,

對「你好」進行UTF-8編碼,得到的實際是一串高/低電平序列,只不過行業預設在將這串高/低電平展示給程式設計師看時,需要先轉換成16進製制,否則程式設計師難以閱讀。所以你在python中輸出編碼結果時顯示的是16進製制,是計算機為了給你閱讀而從高/低電平序列轉換而來的,他自己當然是看不懂的。

這就好比乙個會漢語的外中國人和你對話,雖然他自己思考時用的是母語,但和你交談時用的是中文。你當然不會因為「他思考時用的又不是中文」這種原因拒絕讓他用中文和你對話,否則是給自己找麻煩。

不懂編碼的意義何在,計算機不是只能識別0和1嗎,直接把我們的文字和0和1對應起來就好,為啥要搞GBK UTF-8?

編碼做的工作正是將我們的文字和高/低電平對應起來,只不過當計算機向程式設計師展示這串高/低電平序列時,將其轉換成了數字,以方便程式設計師閱讀。而16進製制數既具有較高轉換效率,又具有較高可讀性,所以編碼結果一般被轉換成16進製制數字。

4樓:銀鏡玄心

題主應該剛接觸編碼,或者沒有系統學習過計算機偏基礎的知識。這裡舉個比較具體的栗子:

SMTP是一種郵件傳遞協議(不用詳細知道是啥),但它只支援大英帝國的語言傳送。你願意只用英語寫信發訊息嗎?

這種協議已經走進了千家萬戶後,你跑去和大英帝國說,去把所有用這個協議的熱備都改下,把我大華夏的語言加進去,別人會理你嗎?

沒辦法,日不落帝國的太陽早就落了,有大把人民是不會英語的,所以就出現了MIME協議,它把各國語言處理一下,然後再用SMTP傳送。

1.先不論二進位制對計算機本就是必然這件事。二進位制電腦已經走進了千家萬戶,再改用十進位制顯然不可能。

2.至於為什麼顯示成十六進製制,同樣類似於上面的例子,你是大英帝國的人,你可以直接看二進位制很舒服,但大部分人覺得看二進位制0101眼都花了,所以就在二進位制的基礎上把它顯示成十六進製制。

你可能覺得再由十六進製制轉化成二進位制太麻煩,但對計算機來說也只是用左手和右手的關係,也許你右手更靈活,但左手同樣是你手。畢竟十六進製制只是把四位四位的二進位制組合到了一起,並沒有什麼運算。

5樓:ClockIT

8進製 3個1等於1個7

16進製制 4個1等於1個F

// 你好 UTF-8

char8_t

text16[6

]=;char8_t

text10[6]=;

為什麼計算機要用二進位制?

巨集力捷PCBA 1 技術實現簡單,計算機是由邏輯電路組成,邏輯電路通常只有兩個狀態,開關的接通與斷開,這兩種狀態正好可以用 1 和 0 表示。2 簡化運算規則 兩個二進位制數和 積運算組合各有三種,運算規則簡單,有利於簡化計算機內部結構,提高運算速度 3 適合邏輯運算 邏輯代數是邏輯運算的理論依據...

計算機是怎麼識別二進位制的?或者應該說問處理器是怎麼識別 1 和 0 的?

十萬丶伏特 處理器不用識別0和1,通常乙個邏輯電路,你把它畫好以後,它的輸出就只根據輸入 或者時序和輸入的結合 來決定。但是程式就好比能夠動態改變你設計好的電路,微控制器執行指令後,微控制器內部的電路還真就變化了,不過這個變化不是像機械開關那樣變化,而是電路中不同位置的電壓狀態的變化。比如你寫p1....

有沒有人造過非二進位制計算機?

wap12358 早期計算機有些就不是二進位制的,包括大名鼎鼎ENIAC,就是十進位制的,也出現過一些三進製計算機其他答主也提到了。計算機流行二進位制不是哪個人規定的而是因為二進位制很適合構建計算機。計算機內的數字是由電壓表示的,如果電源為9v,使用二進位制時,我們用9v表示1,0v表示0,只需要接...