日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

鳥哥的 Linux 私房菜 -- 計算機概論 -- 計算機

系統 2023 0

鳥哥的 Linux 私房菜 -- 計算機概論 -- 計算機:輔助人腦的好工具

最近更新日期:2009/08/03


數據表示方式

?

事實上我們的計算機只認識0與1,記錄的數據也是只能記錄0與1而已,所以計算機常用的數據是二進位的。
但是我們人類常用的數值運算是十進位,文字方面則有非常多的語言,臺灣常用的語言就有英文、中文(又分正體與簡體中文)、日文等。
那么計算機如何記錄與顯示這些數值/文字呢?就得要透過一系列的轉換才可以啦!底下我們就來談談數值與文字的編碼系統羅!

?


數字系統

?

早期的計算機使用的是利用通電與否的特性的真空管,如果通電就是1,沒有通電就是0,
后來沿用至今,我們稱這種只有0/1的環境為二進位制,英文稱為binary的哩。所謂的十進位指的是逢十進一位,
因此在個位數歸為零而十位數寫成1。所以所謂的二進位,就是逢二就前進一位的意思。

那二進位怎么用呢?我們先以十進位來解釋好了。如果以十進位來說,3456的意義為:

3456 = 3x10 3 + 4x10 2 + 5x10 1 +
6x10 0

特別注意:『 任何數值的零次方為1 』所以10 0 的結果就是1羅。
同樣的,將這個原理帶入二進位的環境中,我們來解釋一下1101010的數值轉為十進位的話,結果如下:

1101010=1x2 6 + 1x2 5 + 0x2 4 +
1x2 3 + 0x2 2 + 1x2 1 + 0x2 0

= 64 + 32 + 0x16 + 8 + 0x4 + 2 + 0x1 = 106

這樣你了解二進位的意義了嗎?二進位是計算機基礎中的基礎喔!了解了二進位后,八進位、十六進位就依此類推啦!
那么知道二進位轉成十進位后,那如果有十進位數值轉為二進位的環境時,該如何計算?
剛剛是乘法,現在則是除法就對了!我們同樣的使用十進位的106轉成二進位來測試一下好了:

?



圖3.1.1、十進位轉二進位的方法

?

最后的寫法就如同上面的紅色箭頭,由最后的數字向上寫,因此可得到1101010的數字羅!
這些數字的轉換系統是非常重要的,因為計算機的加減乘除都是使用這些機制來處理的!
有興趣的朋友可以再參考一下其他計算計概論的書籍中,關於1的補數/2的補數等運算方式喔!

?


文字編碼系統

?

既然計算機都只有記錄0/1而已,甚至記錄的數據都是使用byte/bit等單位來記錄的,那么文字該如何記錄啊?
事實上文字檔案也是被記錄為0與1而已,而這個檔案的內容要被取出來查閱時,必須要經過一個編碼系統的處理才行。
所謂的『編碼系統』可以想成是一個『字碼對照表』,他的概念有點像底下的圖示:

?



圖3.2.1、數據參考編碼表的示意圖

?

當我們要寫入檔案的文字數據時,該文字數據會由編碼對照表將該文字轉成數字后,再存入檔案當中。
同樣的,當我們要將檔案內容的數據讀出時,也會經過編碼對照表將該數字轉成對應的文字后,再顯示到螢幕上。
現在你知道為何瀏覽器上面如果編碼寫錯時,會出現亂碼了嗎?這是因為編碼對照表寫錯,
導致對照的文字產生誤差之故啦!

常用的英文編碼表為ASCII系統 ,這個編碼系統中,
每個符號(英文、數字或符號等)都會占用1bytes的記錄,
因此總共會有2 8 =256種變化。至於 中文字當中的編碼系統目前最常用的就是big5這個編碼表了
每個中文字會占用2bytes,理論上最多可以有2 16 =65536,亦即最多可達6萬多個中文字。
但是因為big5編碼系統并非將所有的位都拿來運用成為對照,所以并非可達這么多的中文字碼的。
目前big5僅定義了一萬三千多個中文字,很多中文利用big5是無法成功顯示的~所以才會有造字程序說。

big5碼的中文字編碼對於某些數據庫系統來說是很有問題的,某些字碼例如『許、蓋、功』等字,
由於這幾個字的內部編碼會被誤判為單/雙引號,在寫入還不成問題,在讀出數據的對照表時,
常常就會變成亂碼。不只中文字,其他非英語系國家也常常會有這樣的問題出現啊!

為了解決這個問題,由國際組織ISO/IEC跳出來制訂了所謂的 Unicode編碼系統,
我們常常稱呼的UTF8或萬國碼的編碼就是這個咚咚
。因為這個編碼系統打破了所有國家的不同編碼,
因此目前網際網絡社會大多朝向這個編碼系統在走,所以各位親愛的朋友啊,記得將你的編碼系統修訂一下喔!

鳥哥的 Linux 私房菜 -- 計算機概論 -- 計算機:輔助人腦的好工具


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 兴文县| 新乡市| 邵阳市| 台前县| 安徽省| 敦煌市| 岱山县| 北安市| 光泽县| 江西省| 普安县| 方城县| 长岛县| 清苑县| 吴堡县| 忻城县| 精河县| 安福县| 洛南县| 卢龙县| 宁德市| 阳信县| 新龙县| 长子县| 林口县| 马关县| 西和县| 云南省| 弥渡县| 噶尔县| 江北区| 建始县| 内乡县| 买车| 和顺县| 博客| 安多县| 正蓝旗| 壤塘县| 舞阳县| 汉源县|