趣味面試題 為什麼儲存乙個漢字需2位元組?

2021-10-10 17:23:45 字數 521 閱讀 1754

因為計算機是美國人發明的,美國人制定的計算機編碼是ascii碼,定義8(bit)位二進位制數為1byte(位元組),為什麼是8位,因為2的8次方為256,英文的字母,控制符,符號可以用256個編碼內全部包含。然後後來計算機應用到全世界,全世界各種語言都需要編碼,然後在ascii碼的基礎上,第乙個位元組已經被英文全部用完,需要更多的位元組來表示其他的語言,然後加1個位元組就是加了8位二進位制,就是2的16次方,就可以表示65535個文字了,在這個量級上,基本能滿足大部分的編碼需要了!所以漢語需要兩個位元組來儲存。

乙個字母是乙個位元組

乙個位元組8位 2進製 就有2的8次方 256種組合 足夠代表字母和符號

但是漢字有很多 所以需要更多的組合 才擴到2個位元組

說簡單了,就是第乙個位元組已經被美國人先用完了,我們如果加入就只能從第二個位元組開始了。就是這麼簡單!

ps:乙個位元組byte = 8bit,可以表示最大數字為 11111111 ,從右往左從2的0次方開始數,加起來等於255,所以乙個位元組能表示任意乙個數字或字母、符號……但是存中文就需要更多的位數,就需要2位元組

面試題 為什麼要使用訊息佇列?

其實面試官主要是想看看 為什麼使用訊息佇列?其實就是想知道是因為什麼原因引入的mq技術,為了解決哪些問題。面試官期望的回答就是,當初你們公司有乙個什麼樣的業務場景,這個場景有什麼樣的技術挑戰,不用mq可能會有麻煩,現在引入mq帶來了哪些好處。通過mq的好處是 解耦,非同步,削峰。解耦這個場景通常是發...

面試題 為什麼要分庫分表

為什麼要分表分庫 設計高併發系統的時候,資料庫層面該如何設計 使用過哪些分表分庫中介軟體?不同的分表分庫中介軟體都有什麼優點和缺點?你們是如何對具體的資料庫進行垂直拆分和水平拆分的?其實這一塊內容主要就是針對高併發的,因為分庫分表主要解決的問題就是支撐高並 資料量大兩個問題。而且現在如果是去網際網路...

MySQL面試題 為什麼使用B 樹作為索引?

問 你的系統使用了什麼資料庫?答 是使用的mysql資料庫。問 你了解過mysql索引嗎?有哪些呢?答 mysql常用的有innodb和myisam索引。問 那innodb底層採用的是什麼結構呢?答 它底層採用的是b 樹的結構,內部也支援hash的結構。好了,面試官引導的差不多了,接下去就要好好回答...