計算機如何存儲數(shù)據(jù)


在計算機中所有的數(shù)據(jù)都被存儲為一連串的二進制信息(0和1)。在這里我將淺談這些二進制信息是如何表示計算機中的字符和數(shù)字的给涕。


第一步:如何存儲0和1?

ram.gif

在計算機的內(nèi)存里有許多存儲0和1設(shè)置吁恍。

如圖所示胰舆,每一個圓圈是一個電池,當(dāng)要存儲一串二進制信息時蕴掏,計算機會先選擇一列進行充電障般, 然后利用橫向和縱向兩條線確定當(dāng)前要存儲信息的位置。從這一列的第一個開始遞歸的選擇盛杰,如果這一個電池代表1就進行充電(在圖中顯示紅色)挽荡,代表0就不充電(在圖中顯示白色)。
這樣就可以在計算機中存儲二進制數(shù)了即供。


第二步:如何存儲數(shù)字定拟?

十進制換算成二進制

37 = 100101
0.75 = 0.11

負數(shù)會以補碼的形式存儲
小數(shù)會以浮點數(shù)的形式存儲
具體換算方法是數(shù)學(xué)問題,請自行了解


第三步:如何存儲字符

字符是從從存儲數(shù)字的思路延伸過來的募狂。

ascii.jpg

如果你想儲存 a办素,那么就儲存 97(10) 對應(yīng)的二進制
a -> 0110 0001(2) -> 61(16)

如果你想儲存 字符1,那么就儲存 49(10) 對應(yīng)的二進制
1 -> 0011 0001(2) -> 31(16)

gb2312.png

GB2312 共收錄 6763 個漢字祸穷,同時收錄了包括拉丁字母性穿、希臘字母、日文平假名及片假名字母雷滚、俄語西里爾字母在內(nèi)的 682 個字符需曾。
后來為了存儲生僻字、繁體字祈远、日語呆万、朝鮮語等,微軟推出了 GBK 字符集


統(tǒng)一標(biāo)準(zhǔn)存儲所有字符

Unicode 字符集 將全球文字統(tǒng)一到一個表里面车份,包括中日韓文字谋减、藏文、盲文扫沼、楔形文字出爹、 顏文字:-)
、繪文字??

如何將Unicode存到計算機里缎除?

由于unicode存儲有些字符占用內(nèi)存太大严就,為了解決這個問題,有了一種字符編碼方式——UTF-8器罐。
例如:

  • 低效率方式:
    a -> 00000000 00000000 00000000 01100001(2) = 0061(16)
    你 -> 00000000 00000000 01001111 01100000(2) = 4F60(16)
  • 高效率方式:
    a -> 01100001
    你-> 11100100 10111101 10100000
  1. 像“a”這種較短的字符(小于七位的)梢为,我們可以直接在前面補零表示

  2. 像“你”這種長的字符,由于計算機讀取時無法弄清楚是存儲了一個 由兩個一字節(jié)組成的字符還是一個由兩字節(jié)組成的字符,解決方法:

  3. 我們從高位依次劃分6個字符進行分組铸董,直到分出的組不足6個祟印。即:0100 111101 100000

  4. 分別在每一組前面補全讀取這一串二進制信息的規(guī)則,即:11100100 10111101 10100000
    1110+0100:111表示計算機需要讀取3個字節(jié)袒炉,每個字節(jié)的開頭都是10
    10+111101旁理、10+100000: 所以后兩個分組的開頭也補上10,說明是和第一個字節(jié)一起的我磁,組成一個字符孽文。


字符集歷史

charset.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市夺艰,隨后出現(xiàn)的幾起案子芋哭,更是在濱河造成了極大的恐慌,老刑警劉巖郁副,帶你破解...
    沈念sama閱讀 222,729評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件减牺,死亡現(xiàn)場離奇詭異,居然都是意外死亡存谎,警方通過查閱死者的電腦和手機拔疚,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,226評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來既荚,“玉大人稚失,你說我怎么就攤上這事∏∑福” “怎么了句各?”我有些...
    開封第一講書人閱讀 169,461評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長晴叨。 經(jīng)常有香客問我凿宾,道長,這世上最難降的妖魔是什么兼蕊? 我笑而不...
    開封第一講書人閱讀 60,135評論 1 300
  • 正文 為了忘掉前任初厚,我火速辦了婚禮,結(jié)果婚禮上孙技,老公的妹妹穿的比我還像新娘产禾。我一直安慰自己,他們只是感情好绪杏,可當(dāng)我...
    茶點故事閱讀 69,130評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著纽绍,像睡著了一般蕾久。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拌夏,一...
    開封第一講書人閱讀 52,736評論 1 312
  • 那天僧著,我揣著相機與錄音履因,去河邊找鬼。 笑死盹愚,一個胖子當(dāng)著我的面吹牛栅迄,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播皆怕,決...
    沈念sama閱讀 41,179評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼毅舆,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了愈腾?” 一聲冷哼從身側(cè)響起憋活,我...
    開封第一講書人閱讀 40,124評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎虱黄,沒想到半個月后悦即,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,657評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡橱乱,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,723評論 3 342
  • 正文 我和宋清朗相戀三年辜梳,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片泳叠。...
    茶點故事閱讀 40,872評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡作瞄,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出析二,到底是詐尸還是另有隱情粉洼,我是刑警寧澤,帶...
    沈念sama閱讀 36,533評論 5 351
  • 正文 年R本政府宣布叶摄,位于F島的核電站属韧,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏蛤吓。R本人自食惡果不足惜宵喂,卻給世界環(huán)境...
    茶點故事閱讀 42,213評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望会傲。 院中可真熱鬧锅棕,春花似錦、人聲如沸淌山。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,700評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽泼疑。三九已至德绿,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背移稳。 一陣腳步聲響...
    開封第一講書人閱讀 33,819評論 1 274
  • 我被黑心中介騙來泰國打工蕴纳, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人个粱。 一個月前我還...
    沈念sama閱讀 49,304評論 3 379
  • 正文 我出身青樓古毛,卻偏偏與公主長得像,于是被迫代替她去往敵國和親都许。 傳聞我的和親對象是個殘疾皇子稻薇,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,876評論 2 361

推薦閱讀更多精彩內(nèi)容

  • 編程基礎(chǔ) 1.硬件與軟件:計算機的運行原理《編碼》 2.最大的軟件:操作系統(tǒng) 維基百科 3.自己寫軟件:數(shù)據(jù)結(jié)構(gòu)...
    饑人谷_張樂閱讀 647評論 0 2
  • 1個字節(jié)8位,不夠8位左邊加0湊夠8位梭稚。 計算機內(nèi)存存儲 0 和 1 計算機內(nèi)存之中只存儲0和1(二進制)颖低,通過硬...
    饑人谷_風(fēng)爭閱讀 803評論 0 0
  • 編程基礎(chǔ) 1,硬件與軟件:計算機的運行原理(《編碼》)2弧烤,最大的軟件:操作系統(tǒng)(維基百科)3忱屑,自己寫軟件:數(shù)據(jù)結(jié)構(gòu)...
    yytyff閱讀 337評論 0 0
  • 簡介 或許聽起來莺戒,開發(fā)OS是很高大上的事情,這也是每一個程序猿和編程愛好者的夢想急波,我也是从铲。 既然想到不如直接開干,...
    TaXue_WWL閱讀 1,800評論 4 10
  • 雷雁雄10月10日總結(jié):今天女兒18歲生日澄暮,因住校名段,送蛋糕到學(xué)校給孩子過生日;下午跑客戶溝通交流泣懊。
    雷雁雄閱讀 258評論 0 0