Re: [請益] 為什麼電腦資料要用16進位
※ 引述《kenin (風起雲湧)》之銘言:
: 標題: [請益] 為什麼電腦資料要用16進位
: 時間: Tue Jun 2 22:30:34 2009
:
: 我知道電腦本身所讀取的都0跟1
: 而在儲存資料時為何要用16進位而不用8進位或32進位
: 如果電腦儲存時改用8進位或32進位會有什麼差別
:
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 122.123.169.247
: → leoblack:16進位是否是指"有16個欄位可以紀錄1/0的資訊"?! 06/02 22:34
: → kenin:8進位=3個bit 16進位=4bit 32進位=5bit 06/02 22:39
: → yhliu:有的電腦系統是採用8進位的, 當然基礎仍是2進位. 06/02 22:45
: → sitos:糟... 我連問題都看不懂. 06/02 23:40
: 推 ot32em:應該跟組合語言的 BYTE(1byte), WORD(2byte), DWORD(4byte) 06/02 23:46
: → ot32em:怎麼樣也不會 DWORD會來個2.25byte 有點不太乾跪~ 06/02 23:47
: 推 HuangJC:一切都是人類的解釋,不過我們溝通時想要有共通的專有名詞 06/02 23:54
: → HuangJC:一般來說,5V為1,0V為0 ; 但事實上 5V為0,0V為1 亦無不可 06/02 23:55
: → HuangJC:因為開關明顯有兩態,所以我們發展了二進位數學,並且貫串 06/02 23:56
: → HuangJC:CPU 內部的運算系統;但事實上3進位也可以用,多加個 -5V XD 06/02 23:57
: → HuangJC:只是..用了三進位,你就獨門獨戶了..要怎麼和別人談? 06/02 23:57
: → xiaoa:要看是什麼"資料"吧.... 現在的系統不是多採用32bit嗎? 06/03 00:12
: 推 HuangJC:2'進位'和 32'位元' 是兩回事;我們討論'逢2進位'這事就好 06/03 00:16
: → xiaoa:JC說的不對吧...半導體做不到3進位, 只能從2bit降下來, 這樣 06/03 00:17
: → xiaoa:難怪 板主說問題都看不懂..... 06/03 00:17
: → HuangJC:32位元是指有32個2進位的數字;最後..3進位有用,看怎麼解讀 06/03 00:18
: → HuangJC:我們先講完課本上有的東西,因為那是想統一大家字眼的基礎 06/03 00:19
: → xiaoa:原PO說的16進位就是4bit. 他自己推文不是說了....... 06/03 00:20
: 推 HuangJC:他的說法是對的,只是同時混用'位元'和'進位',有人搞混了 06/03 00:26
: → HuangJC:所以把字眼再單純化,說電腦只懂二進位,會比較好談 06/03 00:27
: → xiaoa:原PO不是問,為何單位元不是3進. 是問,為何用4位元,不用3、5 06/03 00:30
: → xiaoa:3樓不是說了嗎...... 06/03 00:31
我不能很精準的回答原PO的問題
而我只是略懂, 所以有錯勿怪
--回應JC大--離題離很大--
目前, 電腦所用的運算單元是由半導體電路組成的
對電路來說, 電流是類比訊號, 要多少進位都不是問題
但基本上, 我們為了要運算, 必須在電路上增進"開關"
這些開關, 便是半導體
每一個半導體都能很直接的代表 開 和 關, 即 一個二進位的一位數字
試問半導體是不是可以表示 三進位?
假設今天有 0V, 5V 10V, 半導體 在5V時導通
一個半導體無法分辨 5V 和 10V的差別. 也許電流大一點, 但它就是無法分辨
這時, 如果我們使用 二個半導體 + 適當的電路設計, 我們就能分辨 0,5,10的差別
所以, 接論是:
半導體能夠表示三進位
但是這裡有個漏洞
我們使用了二個半導體
二個半導體實際上能代表四進位
我們卻只用了三個數字, 那其不是浪費??
這就是為甚麼電腦多是以二進位做為基礎,4進位,8進位,16進位的運算
如果電子儀器的設計, 其運算單元並非半導體, 那它不是2進位並不奇怪
希望這樣有回答到 JC大
--原PO的問題--
在早時候, 半導體晶元還很大
運算時要盡量節省, 所以要用較少的 bit來代表一個"字元"
(PS: 在硬體上會預留空間給字元, 也就是資料為01, 4bit硬體只能以 0001 表示)
但是, 字元有必要為人所容易理解的介面(要不然誰看得懂101010110是啥鬼)
例如早期的文字是使用 8bit(更早期沒有文字就只用4bit囉)
那時候根本只有美國做為主流,在開發、應用電腦, 8bit就足夠了
後來多國語言加入 8bit逐漸被淘汰
這其中還牽涉到轉換
機械語言 <-> 低階語言 <-> 高階語言
機械語言就是 10101
高階語言是各種程式編寫碼
低階語言是...不知道怎麼減略說明 http://0rz.tw/323hv
不知道是那一個部分在使用 4bit, 或者說現在還在使用
我只知道現在集成電路技術、高階語言都很發達, 很闊氣的使用32bit、64bit
Orz
這問題常常到處有人討論, 建議原PO到處爬爬文看看 (我自己也沒爬文....逃~)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.244.42
推
06/03 01:16, , 1F
06/03 01:16, 1F
→
06/03 01:16, , 2F
06/03 01:16, 2F
→
06/03 01:17, , 3F
06/03 01:17, 3F
你要看做成本也可以. 我覺得這只是有沒有充分利用的問題
這樣看就懂了
10進位 2進位 2進位模擬3進位
0 0 00 -> 0
1 1 01 -> 1
2 10 10 -> 2
3 11 100 -> 10
4 100 101 -> 11
9 1001 10000 -> 100
10 1010 10001 -> 101
3進位每個byte是由二個2進位位元組成
這種轉換,在數字越來越大時,
如10進位的10, 用 2進位模擬3進位的結果,
> 10進位 2進位 2進位模擬3進位
> 10 1010 10001 -> 101
^^^^^
如果10001,當成真正的2進位,看在10進位中是17
在擬3進位中卻只能代表10, 足足有 7/17的無意義位元....
※ 編輯: xiaoa 來自: 140.112.244.42 (06/03 01:41)
推
06/03 01:27, , 4F
06/03 01:27, 4F
→
06/03 01:28, , 5F
06/03 01:28, 5F
推
06/03 01:30, , 6F
06/03 01:30, 6F
→
06/03 01:31, , 7F
06/03 01:31, 7F
推
06/03 01:45, , 8F
06/03 01:45, 8F
→
06/03 01:47, , 9F
06/03 01:47, 9F
推
06/03 01:48, , 10F
06/03 01:48, 10F
→
06/03 01:48, , 11F
06/03 01:48, 11F
→
06/03 01:49, , 12F
06/03 01:49, 12F
→
06/03 01:50, , 13F
06/03 01:50, 13F
→
06/03 01:50, , 14F
06/03 01:50, 14F
→
06/03 01:51, , 15F
06/03 01:51, 15F
→
06/03 01:52, , 16F
06/03 01:52, 16F
→
06/03 01:53, , 17F
06/03 01:53, 17F
→
06/03 01:53, , 18F
06/03 01:53, 18F
你想太多了....一切都半導體惹的禍
現在想要開發量子電腦就是希望破除半導體這樣的拘限
量子電腦強並不是因為量子很小, 而是因為量子運算單元可以擁有 0 1 以外的態
※ 編輯: xiaoa 來自: 140.112.244.42 (06/03 02:47)
※ 編輯: xiaoa 來自: 140.112.244.42 (06/03 02:51)
推
06/03 02:50, , 19F
06/03 02:50, 19F
→
06/03 02:50, , 20F
06/03 02:50, 20F
→
06/03 02:51, , 21F
06/03 02:51, 21F
→
06/03 02:51, , 22F
06/03 02:51, 22F
→
06/03 02:52, , 23F
06/03 02:52, 23F
→
06/03 02:52, , 24F
06/03 02:52, 24F
→
06/03 02:53, , 25F
06/03 02:53, 25F
→
06/03 02:54, , 26F
06/03 02:54, 26F
→
06/03 02:55, , 27F
06/03 02:55, 27F
推
06/03 02:56, , 28F
06/03 02:56, 28F
→
06/03 02:56, , 29F
06/03 02:56, 29F
你只告訴我, 半導體除了體現"通電"和"不通電"以外, 還有什麼第3態就夠了
真的也不必寫什麼論文
※ 編輯: xiaoa 來自: 140.112.244.42 (06/03 02:59)
→
06/03 02:58, , 30F
06/03 02:58, 30F
→
06/03 02:58, , 31F
06/03 02:58, 31F
→
06/03 02:59, , 32F
06/03 02:59, 32F
時脈數再怎麼增加、改變,每一次的運算仍然是2進位的半導體在做......
※ 編輯: xiaoa 來自: 140.112.244.42 (06/03 03:01)
→
06/03 03:00, , 33F
06/03 03:00, 33F
→
06/03 03:01, , 34F
06/03 03:01, 34F
我上面說過了, 請問你的第三態是什麼?
半通電? 超通電? 非常不通電?
※ 編輯: xiaoa 來自: 140.112.244.42 (06/03 03:03)
→
06/03 03:02, , 35F
06/03 03:02, 35F
→
06/03 03:03, , 36F
06/03 03:03, 36F
推
06/03 09:32, , 37F
06/03 09:32, 37F
→
06/03 09:33, , 38F
06/03 09:33, 38F
推
06/03 09:54, , 39F
06/03 09:54, 39F
→
06/03 09:55, , 40F
06/03 09:55, 40F
→
06/03 10:13, , 41F
06/03 10:13, 41F
→
06/03 10:14, , 42F
06/03 10:14, 42F
→
06/03 10:15, , 43F
06/03 10:15, 43F
→
06/03 10:16, , 44F
06/03 10:16, 44F
→
06/03 10:17, , 45F
06/03 10:17, 45F
→
06/03 10:17, , 46F
06/03 10:17, 46F
→
06/03 10:19, , 47F
06/03 10:19, 47F
→
06/03 10:20, , 48F
06/03 10:20, 48F
→
06/03 10:21, , 49F
06/03 10:21, 49F
→
06/03 10:22, , 50F
06/03 10:22, 50F
→
01/06 23:40,
7年前
, 51F
01/06 23:40, 51F
討論串 (同標題文章)