Re: [請益] 為什麼電腦資料要用16進位
其實電腦系統並不是一切都按 2的 N 次方成長的
只是規格大戰的結果,看誰獲勝
舉例來說,從前的8位元 CPU 有 16條位址線
進到 16 位元電腦時,有 20 條位址線
為什麼不用 32 條?
事實上 32 條也設計得出來
但人家設計 20 條並且行銷成功,那..就流行啦~
一個 byte 有 8個 bit,曾不曾惹過麻煩?
有沒有聽過有些系統只認得七位元?
為什麼這麼怪咧...
可能是夠用就好,可能是保留一個當同位元檢測
也許有人說保留同位元檢測的話,其實骨子裏是八位元,因為那個同位位元你又不能不儲存
那...真正的八位元系統再保留同位位元
你要不要叫它九位元系統? XD
事實上現在沒那麼麻煩,同位位元不儲存了
所以當年有把 RAM 上面偷拔一顆 IC 而 user 不會發現的故事
而這種內部細節 user 不必懂
你就當那是 八位元,就可以學得很好
因此,問題其實應該限縮為 '我為什麼感覺電腦儲存 16 位元'
注意到,是'感覺'
事實上電腦怎麼儲存,已經不見得真的是那樣了
在一個 byte 之前,其實四位元一組是流行過的
因為在16進位到10進位間,還流行過一個 BCD 編碼
http://zh.wikipedia.org/wiki/二進碼十進數
BCD 編碼一次就要動用四位元,三位元還不夠用
用一個16進位來模擬10進位,它有極大的浪費
所以對於儲存方式的浪費,我們很在乎嗎?我不認為
而是整個競爭的結果,最後有了暫時的統一
而兩個四位元,也就是八位元了
這次整個業界還算統一,用乘2的方法在發展
但如果你扣掉同位位元,看到七位元系統的存在
老實說,它是帶來些麻煩
不過它真的存在
對學組合語言的人來說,也許他認為,能被我用 CPU 定址到的才叫'電腦的認知'
那麼(或許)並沒有七位元資料匯流排的電腦
不過那並不是設計不出來
可能只是規格大戰的結果罷了
而對於一些撰寫多單元系統的人來說,他所看到的不只 CPU 的認知
他所要運用的機械語言也不只 CPU 的那一種
我們會用盡方法去想像,描述
不過在討論之前會先統一一下字眼
主 CPU 一定是用八(的倍數)位元系統嗎?
我..不確定
不過會盡量朝這方向設計就是了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.59.179.152
→
06/03 02:43, , 1F
06/03 02:43, 1F
→
06/03 02:44, , 2F
06/03 02:44, 2F
→
06/03 02:45, , 3F
06/03 02:45, 3F
→
06/03 02:46, , 4F
06/03 02:46, 4F
→
06/03 02:46, , 5F
06/03 02:46, 5F
→
06/03 03:05, , 6F
06/03 03:05, 6F
→
06/03 03:22, , 7F
06/03 03:22, 7F
→
06/03 03:24, , 8F
06/03 03:24, 8F
→
06/03 03:28, , 9F
06/03 03:28, 9F
討論串 (同標題文章)
完整討論串 (本文為第 4 之 7 篇):
請益
8
31