Re: [斧正] 關於數位電子的一些問題
: 所以電腦內部是 0 與 1 的世界嗎?
: 這..只講數位的話,是..
: 講到實現它的類比技術,我也不確定
除了這個問題,一般我們也說電腦用二進位在'運算'
但其實現在的電腦不運算已經很久了
當然,計概裏還在教我們二進位的加減乘除
要這樣說的話,那中文驅動程式+CPU 能不能說電腦懂中文?
什麼是電腦?什麼是電腦的外掛?
學生把小抄刻在桌上可不可以說是自己懂的一部份?
open book 考試又如何解釋?
這些問題都突顯了我們需要另一個方式思考:'電腦'的界限在哪裏
通常我們用層次的觀念來解釋
比如網路有七層協定
又比如從核心看 driver,driver 是軟體
但從應用程式看 driver,driver 可以是硬體的一部份
有人把模糊界定的稱為 F/W,但其實 F/W 間一樣有層次關係
所以 H/W,F/W,S/W 這樣三層是不夠的,N 層更好理解
而對問題的理解或解釋,也要看到是針對哪一層的
二進位是可以做算數的,但光講加法,就有進位的問題
如果一位元加法要一秒,那八位元加法要八秒 (事實上我們說'機械週期')
因為要等前一個位元進位才能做下一個位元加法
在八位元時代可以見到這個現象,而某些 CPU 連乘法都不會,已經要跑副程式了
用層次來看,這顆 CPU+副程式=懂乘法的電腦
看,這樣就不用爭辯電腦懂不懂乘法;而是說這一整個架構的框框到哪裏時,它有什麼能力
現在的 CPU 不管做一位元加法,或32位元加法,乘法,都一樣一個機械週期
因為已經沒在運算了,而是'背'--查表法
也因為'背',所以三角函數也可以背進去了
再次用層次來看,我們熟知的16位元以上,80系列的 CPU 是懂加減乘除的
而浮點及三角函數要掛上浮點運算器才懂;不管是掛上硬體的87或是軟體的模擬器
因此電腦用二進位在'運算'嗎?已經愈來愈少;而是用二進位在查表
如果連外掛副程式都要叫做電腦的一部份,那電腦會微積分,也會下象棋
如果副程式不能算,只能計較 CPU 的基本能力的話,那有的還不懂乘除法
計概一般未必這樣教,因為會引起大混亂
通常說電腦用二進位運算就好了
但繼續往下學半加器,全加器,多位數加法器加速等等
會發現只要肯多用些線路,電腦'背'的愈來愈多,直接處理掉的計算也愈多
既然是查表法,我能不能打造一個十進位的電腦出來呢?
那就當然可以了 XD (人在做長乘法時,還不是先死背九九乘法表)
說到底二進位只是'最划算',不是'不用二進位就做不出電腦'
把框框畫最小,畫到 CPU,有的連乘除法都不會
畫大一點,加入副程式,有的已經會做三角函數
再畫大一點點,電腦插上音效卡,唱歌也會了
那你還認為電腦和生物'非常不同'嗎?
板上討論的架構,正好把生物的感覺繞過一輪
從受器一直討論到作動
(什麼是聽覺,什麼是視覺,什麼是味覺;如何發光,如何發聲,...etc)
為什麼我們可以在電腦上找到很多對應呢?
因為它是長久歷史的結晶,它不是一個人設計的
是一大堆人在改進它,觀察自然界的生物,再以之加強它外部迴路
所以,電腦很笨;但我不敢說自己比它聰明 :P
話說回來,外加硬體很多人不承認是電腦的一部份
他們一定要談'電腦只懂0與1'這樣的範圍
(那你能用電腦聽音樂是怎麼回事?大家的字眼太模糊了)
其實,0與1是有,但這框框要畫得小些
比如 CPU,或者 CPU 內的 ALU
如果你要用 ALU 來界定電腦的基本能力的話
那的確就很硬了
也就因為計概通常講 ALU 裏的那塊
所以大家以為電腦只懂0與1
喔,我還沒和你講調變解頻咧,那是交流電的範圍
從前會吱吱響的 MODEM 就這東西
它實作連續0就不是送出連續低電壓了;再怎麼送也得是交流
用核心 IC 界定範圍好不好?
不好,單晶片混合型 DSP,只要一顆就可以發出音頻
你是不是要跟我說電腦會唱歌,懂樂譜?
全矽技術做的單晶片數位CCD,以矽玻璃做鏡頭,直接黏在 IC 上面
只要一顆 IC 就可以做出數位相機,那你要說電腦會拍照?
(目標是只要一顆 IC 就做出保全,所以還要內建網卡直接上網咧)
所以電腦用什麼訊號,那真的得畫定範圍才能談
雖然電腦比不上人腦精密
但要說電腦用0與1,和人腦不同...這就未必了
也許我們也可以談談人腦的計算裏有沒有 Sample & Hold 迴路
抽象化邏輯思考等等
(人看到十顆樹,是記下十顆樹的樣子,還是記下數字十,乘以樹?
那人也蠻'數位'的嘛 XD)
討論歸討論,考試時我還是會寫'電腦只懂0與1,使用二進位'
就好像在路上要守交通規則,但回家後可以討論交通規則一樣
如果要討論,就不要框框;拿框框出來放大絕就很難討論
;;
事實上有很多負邏輯運作的電路,以高壓為 0,以低壓為 1,正好是相反的 XD
這是硬體上的實務,那你還怎麼堅持電腦內的世界簡單?
0 與 1 是抽象邏輯,不是實務上的必然
實務上可能調變,也可能用負邏輯
如果只講 ALU,調變是不太可能了,但負邏輯還是有
就純數位而言,I2C(唸成I平方C) 也可以很複雜
編碼編到不是單純的0與1...
為什麼不做XXX的設計?
嗯,這問題的答案可能是:你怎麼知道沒有
電腦並不只 Intel 出的這系列
我們除了被計概統一,難不成也被 Intel 統一?
能不能和賣得好不好是兩回事
能!但賣得不好,也許是個答案
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.59.179.152
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):
ask-why 近期熱門文章
PTT職涯區 即時熱門文章
54
114