Re: [請益] 為什麼電腦資料要用16進位
: 你只告訴我, 半導體除了體現"通電"和"不通電"以外, 還有什麼第3態就夠了
: 真的也不必寫什麼論文
: → HuangJC:我剛不是說了,-5,0,+5 這三種電壓就可以三態了嗎? 06/03 03:01
: 我上面說過了, 請問你的第三態是什麼?
: 半通電? 超通電? 非常不通電?
*----- B pull to -5V
/
A--+--* *----- C pull to 0V
|
| *----- D pull to +5V
|
+----------- output
(三選一連接,不可同時連接兩點以上造成短路)
以上電路就可以了
的確只有導通和不導通
但是 A 有 B,C,D 三個導通選擇,就可以得到三種電壓
很浪費?你可以想像成用三個導不導通來做這一件事
但如果我想省接腳時,我還是用啊
另外,程式都八位元,資料都八位元,一定嗎?
01010101 01010100 <= 第一個八位元是程式,第二個八位元是資料
但也可以是這樣
01010101010 10100 <= 前11個元位是程式,後五位元是資料
但這時我們會自找麻煩把書編得很難讀嗎?不會
注意看到,我上面只有抽象講法的不同,但十六進位都是 '55 54'
所以我可以想法子把書編成 55 是一道指令,
後面的 54 有五位元的資料,加上高達八種小變化
總之在抽象的理解上,彈性很大
有沒有這種5位元的資料呢?有..
所以我說中央單元都想像成2進位,想像成八位元
那是讓你想像而已..
最重要的是,你感覺到了什麼,然後才能學得好
但如果你想插一根探針就讀到這些資料
如果有編碼,那會有相當的難度
對於 basic 學生,二進位不一定要懂,它很人性化,用十進位
對於寫網頁的人,他整天看 UTF-8,理解到的可能是可變長度編碼
我們以為這個問題是在討論中央處理單元所看到的...
但它也可能只用5位元當資料呀 :)
但你一切都只用二進位理解,可以理解到最多沒錯
即使我舉的5位元,它還是二進位的
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.59.179.152
→
06/03 03:31, , 1F
06/03 03:31, 1F
一般五位元的儲存,目前還是會用八位元來做
前面舉的例中,前三位元並沒浪費
工程師會想法子擠一些排列組合來用
但如果真要浪費(而且例子很多)
那就浪費吧~
data sheet 會這樣寫
xxxBBBBB <== 前3個 bit don't care,不管填什麼,結果都是一樣的
所以問題不是發生在 CPU 為何只取用5位元
而是'為何我只能把資料,放進八位元的 RAM 裏'
答案就是便宜..大家都在賣八位元,八位元就有現貨;浪費三位元就算了
而事實上很計較 RAM 時,就有很計較的做法
比如存進單位元的串流裏,自己去切割,每五位元當一組資料
犧牲的是速度,但不是辦不到;怎麼辦到的,這裏就離題了
但有沒有 CPU 取用 5位元資料? 有,當然有
所以也當然有只儲存五位元資料(原 PO 所謂的 32進位?)
※ 編輯: HuangJC 來自: 61.59.179.152 (06/03 03:40)
→
06/03 09:34, , 2F
06/03 09:34, 2F
→
06/03 09:34, , 3F
06/03 09:34, 3F
→
06/03 10:11, , 4F
06/03 10:11, 4F
→
06/03 10:12, , 5F
06/03 10:12, 5F
※ 編輯: HuangJC 來自: 61.219.65.16 (06/03 10:26)
→
06/03 12:57, , 6F
06/03 12:57, 6F
你一直以為硬體工程師辦不到?
稍微要試,你就說可以寫論文?
那你怎麼不翻一下 AD/DA 線路,這些概念又有多難?
還有,IDE 排線到達傳輸瓶頸時,是怎麼突破的?
後來為何又回到串列傳輸?
規格之戰,鹿死誰手,我們真的比別人英明?
→
06/03 13:04, , 7F
06/03 13:04, 7F
半導體被用成只有導通和截止,那是運用在飽合區
事實上你前面說的沒錯,半導體就是可以半導,全導
0.1 0.2 0.3 0.4 這種灰階都能用得出來
類比電腦,運算放大器,你家的音響發出的 SIN 波
那全是半導體參與的
運用在飽合區是為了取得最佳的雜訊免疫,但不是只有飽合區好用
ALU 全用二進位是為了和所有的舊包袱相容,但不是只設計得出二進位
所以當雜訊免疫技術提高時,能不能在一個 digit 內多放一些資訊?
當然可以..
你後文說,誰家光碟用半導體做了
那要不要回頭反問,誰說半導體只能用在 0 和 1?
我舉了光儲存,其他磁儲存,電儲存,有沒有人做過不同的設計?
更有甚者,有訊號就是1,沒訊號就是0?
那又怎麼解釋有些系統在儲存連續0時,是混著1在儲存?
那我們回頭只看 ALU 好了,它是二進位運算嗎?
如果一位元加法花一單位時間,那8位元要8單位,32位元要32單位
為什麼不管我加幾位元都一樣快呢?
...誰真的和你實作加法器呀,加法器學會後,變成方便講解的邏輯了
現在都用查表,加數及被加數進入,結果就出來了
電腦是能心算 N 位元加法的聰明小孩 :P
那我要不要做個三進位的 ALU?
能..不划算
但我其實不清楚是不是永遠不划算
比方光碟片上的光儲存如果是三態,也許我就建個三進位的 IC 來輔助
不過這不是電腦的中央 CPU,週邊工程師也不會讓你操心這些了
每個人,都會就他看到的抽象概念去理解及發問
事實上是這樣
※ 編輯: HuangJC 來自: 61.219.65.16 (06/03 18:54)
討論串 (同標題文章)