View
94
Download
0
Category
Preview:
DESCRIPTION
第 5 章 數字系統與資料表示法. Ren-Jie Wang 王仁傑 , Ph.D. rjwang@ntit.edu.tw http://home.scs.ntit.edu.tw/rjwang/. 學習目標. 數字系統的種類 數字系統間的轉換 負數的表示法 常見的英文與中文電腦編碼系統 詳細課程內容請參閱教科書. 5-1 認識數字系統. 5-1-1 為什麼要有數字系統 人類以「十進位系統」來表示數值大小 ; 電腦用「二進位」、「八進位」、「十六進位」來表示資料。 5-1-2 常見的數字系統 十進位 二進位 八進位 十六進位. - PowerPoint PPT Presentation
Citation preview
Introduce to Computer Science 計算機概論
1
第 5 章數字系統與資料表示法
Ren-Jie Wang 王仁傑 , Ph.D. rjwang@ntit.edu.tw
http://home.scs.ntit.edu.tw/rjwang/
Introduce to Computer Science 計算機概論
2
學習目標 數字系統的種類 數字系統間的轉換 負數的表示法 常見的英文與中文電腦編碼系統
詳細課程內容請參閱教科書
Introduce to Computer Science 計算機概論
3
5-1 認識數字系統 5-1-1 為什麼要有數字系統
人類以「十進位系統」來表示數值大小 ; 電腦用「二進位」、「八進位」、「十六進位」來表示
資料。 5-1-2 常見的數字系統
十進位 二進位 八進位 十六進位
Introduce to Computer Science 計算機概論
4
為什麼要有數字系統 二進位 :
以 "1" 代表開 ( 向上 ), 以 "0" 代表關 ( 向下 )
以 “ 1” 代表有電 以 “ 0” 代表沒電
Introduce to Computer Science 計算機概論
5
為什麼要有數字系統 二進位並不是很適合人類閱讀
有沒有人能很快的讀出下面這 2 種設定有何不同 ?
Introduce to Computer Science 計算機概論
6
為什麼要有數字系統 這時候若用十六進位的方法來表示 , 就容易閱讀些:
Introduce to Computer Science 計算機概論
7
常見的數字系統 十進位數字系統:
由 0 、 1 、 2 、 3 、 4 、 5 、 6 、 7 、 8 、 9 等十個數元 ( 滿十 ,進位 )
是目前人類世界中最被廣泛採用的一套系統 二進位數字系統:
用 0 和 1 兩種數元所組成 ( 滿二 , 進位 ) 八進位數字系統:
用 0 、 1 、 2 、 3 、 4 、 5 、 6 、 7 等八種數元 ( 滿八 , 進位 ) 十六進位數字系統:
由 0 、 1 、 2 、 3 、 4 、 5 、 6 、 7 、 8 、 9 、 A 、 B 、 C 、 D 、E 、 F 等十六個數元所組成 ( 滿十六 , 進位 )
Introduce to Computer Science 計算機概論
8
常見的數字系統
Introduce to Computer Science 計算機概論
9
常見的數字系統
一般二進位數值我們都會加個小括弧並標註 『 2 』 , 例如: (101101)2 ; 而十六進位則標註 『 16 』 , 例如 (ACD8)16 , 依此類推。
Introduce to Computer Science 計算機概論
10
5-2 數字系統間的轉換 分成以下三類轉換 : ( 獨門祕方 )
Ⅰ : ( 二、八、十六 ) 轉 十進位
Ⅱ : 十進位 轉 ( 二、八、十六 )
Ⅲ : ( 二、八、十六 ) 互轉
2, 8,16
10
2, 8,16
10
8
162
Introduce to Computer Science 計算機概論
11
5-2-1 轉換數字系統時的基本觀念 數字大小是用「加權法」來計算
位值
先用最熟悉的十進位數字系統來說明:
Introduce to Computer Science 計算機概論
12
Ⅰ : ( 二、八、十六 ) 轉 十進位
用「加權法」
2, 8,16
10
Introduce to Computer Science 計算機概論
13
例
Introduce to Computer Science 計算機概論
14
隨堂練習1. (1011.1)2 = ( )10
2. (1011.1)8 = ( )10
3. (1011.1)16 = ( )10
4. ( 1 ) 十進制數值 50.875 以二進制數值表示, 下列哪一項是正確? 110010.111 110010.110 110100.111 110100.110 。 [ 網頁設計丙檢 ]
Introduce to Computer Science 計算機概論
15
Ⅱ : 十進位 轉 ( 二、八、十六 )
整數—除 採連續除以 基底 , 並保留 『餘數』 , 直到除法運算後
的商數為 0 時停止;然後由最後一次產生的餘數開始 , 依序由左向右排列 , 即可完成整數部分的轉換。
2, 8,16
10
Introduce to Computer Science 計算機概論
16
整數—除以 29.25=( )2 為例
Introduce to Computer Science 計算機概論
17
十進位轉換成二進位 小數—乘
最後將整數部份加上小數部份: 11101 + 0.01 = 11101.01 。 所以 (29.25)10 =(11101.01)2
Introduce to Computer Science 計算機概論
18
隨堂練習1. (8.5)10 = ( )2
2. (37.75)10 = ( )8
3. (53.8125)10 = ( )16
Introduce to Computer Science 計算機概論
19
Ⅲ : ( 二、八、十六 ) 互轉
二進位與八進位:要以 3 個為 1 組來轉換。 二進位與十六進位:要以 4 個為 1 組來轉換。 八進位與十六進位:必須先轉成二進位後再進行轉換。
8
16
2
3
4
Introduce to Computer Science 計算機概論
20
例 :
同理 ,
Introduce to Computer Science 計算機概論
21
隨堂練習1. (35.2)8 = ( )2
2. (3642.447)8 = ( )2
3. (11001.11101)2 = ( )8
4. (100110.101)2 = ( )8
Introduce to Computer Science 計算機概論
22
二進位轉換成十六進位 例 2:
同理 ,
Introduce to Computer Science 計算機概論
23
隨堂練習1. (A5.C)16 = ( )2
2. ( 2 ) 二進制數值 1011011111001110 以十六進制數值表示,下列哪一項是正確的? C7BE B7CE B9CE C8EF 。 [ 網頁設計丙檢 ]
3. ( 4 ) 二進位數值 10100101 轉換為十六進位時, 下列哪一項是正確的? B9 B5 A8 A 5 。 [ 網頁設計丙檢 ]
Introduce to Computer Science 計算機概論
24
八進位轉換成十六進位 八進位與十六進位:必須先轉成二進位後再進行轉換。 例 3 :
同理
Introduce to Computer Science 計算機概論
25
隨堂練習1. (37.6)8 = ( )16
2. (3F.4)16 = ( )8
Introduce to Computer Science 計算機概論
26
5-3 負數的表示法 對人而言 , 負數就是在正數的前面加上『-』符號即可;但是對電腦而言 , 並無眼睛可辨識正負符號。
因此 , 我們必須制定一套讓電腦能夠辨識負數的表示法 , 常見的表示法有以下三種: 最高位元 (Signed Magnitude) 表示法 1 的補數 (1's Complement) 表示法 2 的補數 (2's Complement) 表示法
Introduce to Computer Science 計算機概論
27
1 的補數表示法 使用 1 的補數 (1's Complement) :
一個數的負數即是將該數的每一位元數值 0 、 1 互換 ( 即 1 變 0, 0 變 1) 。如下表:
Introduce to Computer Science 計算機概論
28
1 的補數表示法 1 的補數表示法與最高位元表示法有同樣的缺點 , 也有 2
個 0 (00000000 與 11111111), 因此在實際上 , 較少電腦系統採用此法。
實際被使用的是 2 的補數表示法。
Introduce to Computer Science 計算機概論
29
2 的補數表示法 在 2 的補數 (2‘s Complement) : 速求法
從右往左抄到第一個” 1” 其他 , “0” ←互換→ ” 1”
Introduce to Computer Science 計算機概論
30
隨堂練習1. ( 2 ) 2 進位數值 11000101 之 2 的補數為下列何者?
11001010 00111011
00110101 00111010 。 [ 網頁設計丙檢 ]2. ( 2 ) 2 進位數值 11001101之 1 的補數為何者?
11000010 00110010
00110011 000110010 。 [ 網頁設計丙檢 ]
Introduce to Computer Science 計算機概論
31
文字的表示法 我們把每一個英文字母編上一個號碼 , 建成一套編碼表。
例如按下 [A] 鍵 , 鍵盤便會把其相對應碼 65 的二進位數 01000001 傳到主機 ) 。
Introduce to Computer Science 計算機概論
32
常用的英文電腦編碼系統 由於 8 個位元可以表示出 28 = 256 種資料 , 因此在 PC 上又將
ASCII 碼擴充 , 多了 128 個擴充符號字元 (號碼為 128 ~ 255), 可用來繪製表格的格線 , 或印出特殊的字母、符號等。
Introduce to Computer Science 計算機概論
33
常用的中文電腦編碼系統 Big5 碼是台灣常用的中文編碼系統 , 雖然已收錄了 13461 個常
用字 , 但卻沒有一些比較罕見的字 , 例如大家在看網頁時 , 有時會發現游錫 "堃 " 的 "堃 " 字,以及王建 "煊 " 的 "煊 " 字無法顯示 , 這都是因為 Big5 碼沒有這 2 個字所致。
Introduce to Computer Science 計算機概論
34
全球統一的編碼系統 例如我們平時在瀏覽網頁或收信時 , 有時就會發現網頁或信的
內容全部是亂碼 , 其原因可能就是當初撰寫這些網頁、信件時所採用的編碼系統 , 跟我們解讀時所使用的編碼系統不同 , 以致無法 "溝通 " 所致:
Introduce to Computer Science 計算機概論
35
全球統一的編碼系統 為了解決這樣的問題 , 於是出現了 Unicode 碼 ( 統一碼、
標準萬國碼 ) 。
Recommended