• 9

如果電腦只懂0與1,請問"A"要如何表示呢?

虛像 wrote:
呃...你講的那是洞洞卡,用來輸入用的...好像沒有特殊名詞
字型卡這個東西如果我沒記錯
應該是以前有個中文加速卡甚麼的鬼玩意...
ET4000好像就是這種功能的?還是ET2000?太久了,我記不太得了
印表機裡面也有字型快取記憶體,協助印表機處理字型輸出的
印象中EPSON早期的龍魚系列好像都有這玩意,不過太高級,我沒用過~XD


你記錯了

字型卡是以前硬碟不普及、軟碟速度慢的產物,中文字型資料對當時電腦來說是相當大的負荷,開發公司(如國喬、零壹)把字型檔案資料燒在 ROM 上頭,插在 ISA 上頭,這樣只要讀進磁碟片上的中文系統主程式就好,字型資料就到卡上去抓。這就是最基本款的字型卡。

後來倚天會大賣就是因為他們的飛碟系列把字型資料寫到軟碟上,字型運用彈性極高、生產成本低廉,主程式執行效能又大大精進,所以很多人盜版(字型卡怎麼盜?門檻可高很多,字型檔只要 copy 就行),進而造成大流行。

倚天也有卡版的中文系統,卡版終究是硬體 I/O,比軟硬碟都快,可以輕易實作向量字型,所以多半都是大公司或專業領域使用,後來隨著技術進步,卡上開始整合其他的功能,最常見的當然是整合顯示卡,成為最早的中文顯示加速卡,例如 Tseng 公司的 ET3000/4000 VGA 顯示晶片就曾經被整合過,當時一張倚天的彩虹系列(整合 Tseng的彩色顯示卡,含雷射印表機埠)要價可是好幾萬。

其他也有把 RS-232C (更高檔的還有 buffer)、 LAN、甚至硬體鎖作上去的產品。

後來隨著主機運算效能增加,字型卡這類高貴產品就漸漸消失了,PC 上轉為字型檔效能就足以讓人滿意了,不過印表機還是有「內建字型」(多半是英文,很少有內建中文字型的印表機)這回事,可以加速系統的運作,所謂的內建字型,就是印表機裡頭也有個字型 ROM,不過中文環境下的內建字型印表機通常不實用,完全看中文系統怎麼驅動它,沒支援驅動的時候,這些內建字型就跟報廢沒兩樣。




陽Yg wrote:
是說~我一直以來有個...(恕刪)


如果你想更清楚,一本數位邏輯課本(露天拍賣)是必須的

簡單說明

首先,你必須要知道邏輯閘是什麼

有點像是自動販賣機

輸入訊號(投多少錢)

經過機器運算(判斷你投多少,以及選擇哪個飲料格)

從輸出器顯示成果(掉飲料出來)

而中間的機器運算,就有點像是解碼器解碼過程

說真的,想用幾百字解釋你想要的問題,不太容易

然後,像是影片,數位相片等

數位相片你可以把他想像成電視牆

由開關控制電視亮三原色的其中一種

然後由幾百萬個電視共同組成一張圖片

也就是一張照片由數百萬個三原色的點所構成

而這個數字,就是廣告標榜的多少萬畫素

影片則是類似相片,不過他是從左上開始往右一列一列掃描下來

一樣是一個點一個點慢慢改變,只是更新的頻率很快

肉眼看不出更新(如果有一台沒有安裝顯示卡驅動的就會很明顯)


最後的洞卡

那是用打洞代替0和1

一行可以打八個洞,代表8bit

一行代表一個字

就像這樣

=====================================
○○○○○○○○○○○○
●●●●●○●●●●○○
○●●●●●●●●●●●
○○○○○○●○●○○○
●○●●●○○●○●○○
○●●●●○●●○○○○
○○○○●○●●●○○○
○●○○●○●●○○●●
======================================

轉成二進制
000000000000
111110111100
011111111111
000000101000
101110010100
011110110000
000010111000
010010110011


第01行表示的是0100 1000 查ACSII碼為 H
第02行表示的是0110 0101 查ACSII碼為 e
第03行表示的是0110 1100 查ACSII碼為 l
第04行表示的是0110 1100 查ACSII碼為 l
第05行表示的是0110 1111 查ACSII碼為 o
第06行表示的是0010 0000 查ACSII碼為 空格
第07行表示的是0111 0111 查ACSII碼為 w
第08行表示的是0110 1111 查ACSII碼為 o
第09行表示的是0111 0010 查ACSII碼為 r
第10行表示的是0110 0100 查ACSII碼為 d
第11行表示的是0010 0001 查ACSII碼為 !
第12行表示的是0010 0001 查ACSII碼為 !


最後螢幕印出 "Hello Word!!"

看起來很亂嗎?

這就是最低階的程式語言

電腦易懂,人類難懂

(如果錯誤,不再更正,好累)
好公民不助長非法拷貝 -- 請停止散佈 .doc 檔 http://www.cyut.edu.tw/~ckhung/a/c041.php 作者: 洪朝貴
陽Yg wrote:
是說~我一直以來有個類似的疑問~(應該算類似吧!?!?)

就是電腦的那些晶片,恩..乾脆直接說電子的東西好了,就晶片

怎麼去認得那些訊號,如果說是像開關的話,我還是很好奇開關動作

完後,晶片要怎麼辨視那些輸入的訊號呢QAQ?

我問過一些同學跟老師,他們都說..程度到了自然就會解開疑惑了!?!?

雖然說是這樣我還是會想來想去~哈哈

另外聽說以前的電腦好像還有什麼字型卡!?(好像是字型卡不知道有沒有記錯)


想什麼.. 按部就班認真念書就好......
數位電路從無到念到知道你想要的答案,
只需要三個月到半年的課程,
數學等級高中畢業. 或者如果你國中數學就超級棒, 資優生等級.
虛像 wrote:
呃...你講的那是洞...(恕刪)




任何軟體沒有硬體是作不了事的
軟體是將一種概念經由攢寫流程交付硬體去運算出來
OS就是一套系統幫你管理好所有的硬體控制
簡單來說有
記憶體、CPU、輸入、輸出裝置

以我之前回覆的七段顯示器裝置而言,它就是一輸出裝置
我不用CPU用很簡單的輸入裝置就去決定它要輸出什麼
當然電腦可沒這麼簡單了,沒有OS,沒有軟體控制,根本不要玩了
因為我在這裡邊打字、邊聽音樂、再看營幕上所顯示的畫面
所牽涉的硬體動作可能就多達幾百萬個

但是不要本末倒置了,電腦的發展是從硬體開始,不是先有OS才有CPU的
所謂A跟0101是毫不相干...資料是軟體決定不是硬體決定..
或許你再想想CPU上的ISA架構,再上面組合語言再到最熟悉的C
硬體若沒提供你"印出A" 這個指令或是一連串流程
C還會有printf("A"); 這個指令嗎
06160616 wrote:
電腦裡的訊號,都是用AND、OR、NAND、NOR閘來當開關或是處理訊號的
數量不多,只有幾億個而已
這些開關人類當然不可能一一控制
所以才有C語言、C++等等的程式來控制


應該說組合語言太低階,
不符合人的思考模式,
所以才有C, C++ 這種比較高階的程式來給一般人寫.

換成硬體工程師的話, 寫 Driver,
或者是寫 C++ Complier 的軟體工程師,
就會有必須要用組合語言的時候了.
0與1是依電壓滴大小來區別滴
比如說電壓低於1.5V則是0 高於1.5V則是1
0與1稱為數位訊號 因為2進位最容易設計
所以電腦只看滴懂0與1
科學家曾經用其他進位來設計電腦
但是因為太複雜而放棄

地球上有很多實驗室
每個實驗室各自開發不同滴系統
比如說美國有美規
歐洲有歐規
日本有日規
沒有規定要使用哪一個國家滴規格
只能盡量整合 讓電腦規格能全世界通用

windows使用滴是美國實驗室滴編碼
0000 0000 0
0000 0001 1
.
.
.
一直排下去
A是0100 0001
對電腦來說 此篇文章 就是 (編碼是亂編滴)

0001 0001 0010 0010 0100 0100 1000 1000
1100 1100 1001 1001 1010 1010 0011 0011
.
.
.
無限滴0與1

tonylsg wrote:
0與1是依電壓滴大小來區別滴
比如說電壓低於1.5V則是0 高於1.5V則是1
0與1稱為數位訊號 因為2進位最容易設計
所以電腦只看滴懂0與1
科學家曾經用其他進位來設計電腦
但是因為太複雜而放棄
(恕刪)




看完這篇我反而Confuse起來@@"

其實這種基礎題型要理解還是要從底層跟歷史來討論

其實如果以網路傳輸來說
電氣訊號的編碼並不是這樣編的

我們通常會定義 0是高電位 1是低電位 或是0是正負電位 1是變動電位
有興趣可以去閱讀以下這篇
NTHU教材--網路實體層



tonylsg wrote:
地球上有很多實驗室
每個實驗室各自開發不同滴系統
比如說美國有美規
歐洲有歐規
日本有日規
沒有規定要使用哪一個國家滴規格
只能盡量整合 讓電腦規格能全世界通用...(恕刪)


有通用規格
叫做ISO規格

還有IEEE、ASC等等規格

但是同時只會有一種規格成為業界標準

依近年來的習慣是IEEE會成為標準
也有例外的(EX:IEEE 1394 2.0 VS. Intel USB 2.0 )

要成為業界標準的準則是市場接受度
(例外:DX9C)

標準代表什麼
以PCIE 16X BUS來說
只要大家依照PCIE 16X來設計卡板
大家就能主板用ASUS、顯卡用MSI

同理 十年前的DDR大戰RAM-BUS也是同理

近年來其實比較少見的原因就是大家都把戰場移到IEEE (ex:wimax大戰)

誰能在IEEE制訂標準就能收取權利金(註:電信業有另外的3GPP聯盟 所以wimax要成為4G還很拼)



tonylsg wrote:
windows使用滴是美國實驗室滴編碼
0000 0000 0
0000 0001 1
.
.
.
一直排下去
A是0100 0001
對電腦來說 此篇文章 就是 (編碼是亂編滴)

0001 0001 0010 0010 0100 0100 1000 1000
1100 1100 1001 1001 1010 1010 0011 0011
.
.
.
無限滴0與1...(恕刪)


其實windows用的是M$自家的big-5編碼

BIG-5在台灣不是標準(因為台灣標準是CNS編碼)
只是M$帝國夠大,所以變通用規格

新版編碼就是utf-8 utf-16
可納入地球上所有文字

還有剩於的空間可以編外星文字(如果MIB要收錄火星文進UTF編碼應該還有位置)


然後0與1不是無限的喔

8086/8088是8位元的電腦 也就是一次能處理的編碼是8個0與1 (ex:1010 1010)
80286是16位元
80386、80486、80X86都是32位元架構

Intel E系列、Q系列、i系列為64位元架構

//===========以下無關觀念==============//


在CPU架構是這樣編碼的,在其他的零件上
為了跟上CPU的速度,餵給CPU更多東西
因此加大了資料匯流排的寬度

在RAM上面雙通道、三通道也是為了解決這個問題(資料流)

例如nVidia在GPU上面很早就進入128位元領域
目前nV顯卡的晶片是256位元架構(而且是8~30核)


一個簡單的32位元相容64位元觀念
你一次一隻手只能拿32顆球
現在有64顆球你要怎麼拿

答案是:拿2次

沿生的技術面問題就不討論了

上面都只是一些基本觀念



OpenGoodHate wrote:
我們通常會定義 0是高電位 1是低電位 或是0是正負電位 1是變動電位
有興趣可以去閱讀以下這篇
NTHU教材--網路實體層


0, 1 本來就只是定義而已.
OpenGoodHate wrote:

其實windows用的是M$自家的big-5編碼

BIG-5在台灣不是標準(因為台灣標準是CNS編碼)
只是M$帝國夠大,所以變通用規格

...(恕刪)



BIG5碼M$沒關係吧,也不是什麼MS家的編碼

之所以成為主流,是因為倚天中文採用此編碼

而當時倚天中文幾乎獨占了整個中文市場


大家討論這麼多
不過似乎沒有人注意到樓主想知道的是
電腦如何表示A
還是電腦如何顯示A
  • 9
內文搜尋
X
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 9)
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?