40
著著著著著 © 著著著著著著著著著著 著著著著著著著著著著著 ( 著著 GPL 著) 著著著著著著著著著著著著著 著著著著著著著著 著著著著著著著著著 著著著著著著著著著著 ,(), 著著著著著 著著著著著 著著著著著著著著著著著著著著著著著著著著著著 著著著 著著著著著著著著著著著 著著著著著著著著著著著 ,,、、、。 著 5 著 著著著著著著著著著著

第 5 章 數字系統與資料表示法

Embed Size (px)

DESCRIPTION

第 5 章 數字系統與資料表示法. 本堂課重點. 5-1 認識數字系統 5-2 數字系統間的轉換 5-3 負數的表示 5-4 浮點數的表示法 5-5 文字的表示法. 5- 1 認識數字系統. 5-1-1 為什麼要有數字系統 5-1-2 常見的數字系統. 5-1-1 為什麼要有數字系統. 全世界各地有許多不同的語言在使用 , 例如中文、英文、日文 ……, 不知您是否曾想過:為什麼要有 “ 語言 ” 的產生呢?其答案是為了方便彼此溝通。例如 屬於不同地方的兩個人碰面了 , 他們就必須有一個共同瞭解的語言才能溝通 。 - PowerPoint PPT Presentation

Citation preview

Page 1: 第 5 章 數字系統與資料表示法

著作權所有 © 旗標出版股份有限公司

本著作含書附光碟之內容 ( 不含 GPL 軟體 ) ,僅授權合法持有本書之讀者(包含個人及法人)非商業用途之使用,切勿置放在網路上播放或供人下載,除此之外,未經授權不得將全部或局部內容以任何形式重製、轉載、散佈或以其他任何形式、基於任何目的加以利用。

第 5 章 數字系統與資料表示法

Page 2: 第 5 章 數字系統與資料表示法

2

本堂課重點 5-1 認識數字系統 5-2 數字系統間的轉換 5-3 負數的表示 5-4 浮點數的表示法 5-5 文字的表示法

Page 3: 第 5 章 數字系統與資料表示法

3

5- 1 認識數字系統 5-1-1 為什麼要有數字系統 5-1-2 常見的數字系統

Page 4: 第 5 章 數字系統與資料表示法

5-1-1 為什麼要有數字系統 全世界各地有許多不同的語言在使用 , 例如中文、英文、日文…… , 不知您是否曾想過:為什麼要有 “語言” 的產生呢?其答案是為了方便彼此溝通。例如屬於不同地方的兩個人碰面了 , 他們就必須有一個共同瞭解的語言才能溝通。

在電腦裡 , 有二進位 (Binary) 、八進位 (Octal) 、十進位 (Decimal) 、十六進位 (Hexadecimal) 等各種不同的數字系統 (Number System), 這些數字系統也都是為了方便溝通使用。

4

Page 5: 第 5 章 數字系統與資料表示法

5-1-2 常見的數字系統 常見的數字系統 :

十進位數字系統:十進位是一套以 10 為基數 , 逢 10 即進位的數字系統

二進位數字系統:二進位是一套以 2 為基數 , 逢 2 即進位的數字系統

八進位數字系統:八進位是一套以 8 為基數 , 逢 8 即進位的數字系統

十六進位數字系統:十六進位是一套以 16 為基數 , 逢 16 即進位的數字系統

5

Page 6: 第 5 章 數字系統與資料表示法

5-2 數字系統間的轉換 5-2-1 轉換數字系統時的基本觀念 5-2-2 二進位與十進位間的轉換 5-2-3 八進位與十進位間的轉換 5-2-4 十六進位與十進位間的轉換 5-2-5 八進位與二進位間的轉換 5-2-6 十六進位與二進位間的轉換 5-2-7 十六進位與八進位間的轉換

6

Page 7: 第 5 章 數字系統與資料表示法

5-2 數字系統間的轉換 由於電腦內部是以二進位 形式來處理資料 , 所以當 我們輸入資料時 , 電腦會 自動將它轉換成二進位 的形式。

7

Page 8: 第 5 章 數字系統與資料表示法

5-2-1 轉換數字系統時的基本觀念 我們先用最熟悉的十進位數字系統來說明:

8

對於任何十進位的正數 N, 假設包含 p 位整數和 q 位小數 , 則一定可用此多項式來表示:

Page 9: 第 5 章 數字系統與資料表示法

5-2-1 轉換數字系統時的基本觀念 將以上的觀念擴展到 K 進位的數字系統 , 則成為 ( 將 10 換成 K) :

9

N 為 K 進位的正數 , p=整數的位數 , q=小數的位數

Page 10: 第 5 章 數字系統與資料表示法

5-2-2 二進位與十進位間的轉換 二進位轉換成十進位

二進位轉換成十進位時 , 其二進位整數部份 , 在小數點左邊第一位的位值為20、第二位的位值為 21、第三位的位值為22...;而小數部分 ,在小數點右邊第一位的位值為 2-1、

第二位的位 值為 2-2 ...

依序類推。

10

Page 11: 第 5 章 數字系統與資料表示法

5-2-2 二進位與十進位間的轉換 要將其轉為十進位 , 只要將每一個二進位數乘以該數的位值 , 然後相加即可獲得相對應的十進位數值:

11

Page 12: 第 5 章 數字系統與資料表示法

5-2-2 二進位與十進位間的轉換 十進位轉換成二進位

整數部分 採連續除以 2 , 並保留 「餘數」 , 直到除法運算後的商數為 0 時停止;然後由最後一次產生的餘數開始 ,

依序由左向 右排列 , 即 可完成整數 部分的轉換 。

12

Page 13: 第 5 章 數字系統與資料表示法

5-2-2 二進位與十進位間的轉換 小數部分

將小數部份乘以 2 , 保留所得乘積的 「整數部分」 , 繼續將乘法運算後所得的小數部分乘以 2 , 直到所得的小數為 0 時停止;然後由第一次取得的整數開始 ,

依序由左向 右排列 , 即 可完成小數 部分的轉換。

13

Page 14: 第 5 章 數字系統與資料表示法

5-2-3 八進位與十進位間的轉換 八進位轉換成十進位

以 (127.3)8 轉換成十進位來做示範:

14

Page 15: 第 5 章 數字系統與資料表示法

5-2-3 八進位與十進位間的轉換 十進位轉換成八進位

以 (87.375)10 來示範 整數部份

Page 16: 第 5 章 數字系統與資料表示法

5-2-3 八進位與十進位間的轉換 小數部份

16

– 最後將整數部份加上小數部份: 127 + 0.3 = 127.3 。所以 (87.375)10 = (127.3)8

Page 17: 第 5 章 數字系統與資料表示法

5-2-4 十六進位與十進位間的轉換 十六進位轉換成十進位

我們以 (BCE.1E)16轉換成十進位來做示範:

17

Page 18: 第 5 章 數字系統與資料表示法

5-2-4 十六進位與十進位間的轉換 十進位轉換成十六進位

以 (43969.71875)10 轉成十六進位來做示範

整數部份

Page 19: 第 5 章 數字系統與資料表示法

5-2-4 十六進位與十進位間的轉換 小數部份

19

– 最後將整數部份加上小數部份: ABC1+ 0.B8 = ABC1.B8 。所以 (43969.71875)10 = (ABC1.B8)16

Page 20: 第 5 章 數字系統與資料表示法

5-2-5 八進位與二進位間的轉換

20

Page 21: 第 5 章 數字系統與資料表示法

5-2-5 八進位與二進位間的轉換 二進位轉換成八進位

以 (11100001110.101)2 轉換成八進位來做示範:

Page 22: 第 5 章 數字系統與資料表示法

5-2-5 八進位與二進位間的轉換 八進位轉換成二進位

以 (3416.5)8轉換成二進位為例來做示範:

22

Page 23: 第 5 章 數字系統與資料表示法

5-2-6 十六進位與二進位間的轉換

23

Page 24: 第 5 章 數字系統與資料表示法

5-2-6 十六進位與二進位間的轉換 二進位轉換成十六進位

以 (1011111001.0011101)2 轉換成十六進位來做示範:

24

Page 25: 第 5 章 數字系統與資料表示法

5-2-6 十六進位與二進位間的轉換 十六進位轉換成二進位

以 (2F9.3A)16 轉換成二進位為例來做示範:

Page 26: 第 5 章 數字系統與資料表示法

5-2-7 十六進位與八進位間的轉換 八進位轉換成十六進位

以 (346.7)8 轉換成十六進位為例來做示範:

26

Page 27: 第 5 章 數字系統與資料表示法

5-2-7 十六進位與八進位間的轉換 十六進位轉換成八進位

以 (E6.E)16 轉換成八進位為例來做示範:

Page 28: 第 5 章 數字系統與資料表示法

5-3 負數的表示法 5-3-1 最高位元表示法 5-3-2 1 的補數表示法 5-3-3 2 的補數表示法

28

常見的表示法有以下三種: 最高位元表示法 ( 也稱為附加符號表示法 ) 1 的補數表示法 2 的補數表示法

Page 29: 第 5 章 數字系統與資料表示法

5-3-1 最高位元表示法

29

5-3-2 1 的補數表示法 使用 1 的補數 (1's Complement) 表示法

時 , 一個數的負數即是將該數的每一位元數值 0 、 1 互換 ( 即 1 變 0, 0 變 1) 。

Page 30: 第 5 章 數字系統與資料表示法

5-3-3 2 的補數表示法 在 2 的補數 (2's Complement) 表示法裡 , 一個數的負數即是其 1 的補數值再加 1,

30

Page 31: 第 5 章 數字系統與資料表示法

5-4 浮點數的表示法 正規化

所謂的正規化 , 是將該數字轉換成二進位的 1.xxxxxx × 2 指數 的形式。

例如要計算 (12.25) 10經正規化的結果 , 需先將其轉換為二進位 (12.25)10 =(1100.01)2 , 再正規化成 1.10001 × 23。此時 , 1.10001 × 23

可解讀出以下資訊 , 這些資訊將在轉換成浮點數表示法時用到:

此數值為正數。 指數為 3 。 小數部分為 10001 。

31

Page 32: 第 5 章 數字系統與資料表示法

5-4 浮點數的表示法 浮點數表示法

不同 CPU 雖有其各自的浮點數表示法 , 但一般較常採用 IEEE 協會所訂定的浮點數表示法標準 ( IEEE Standa rd 754), 其分成單精確度 (Single Precision) 及雙精確度 (Double Precision) 二種。

兩者的差別在於單精確度是以 32 個位元來表示浮點數 , 雙精確度則是用 64 位元表示。

32

Page 33: 第 5 章 數字系統與資料表示法

5-4 浮點數的表示法 浮點數表示法

33

正 / 負符號:表示這個數字是正數還是負數 , 用 0 表示正數 , 1 表示負數。

偏差指數:表示這個數字的指數部分。 小數部份:表示這個數字的小數部分。

Page 34: 第 5 章 數字系統與資料表示法

5-4 浮點數的表示法 以 (12.25)10為例 , 看看如何以單精確度的浮點數表示法來表示。首先 , 它是個正數 , 所以第一個位元已經確定是 0 。

接著將其正規化成 1.10001 × 23, 此時便可計算出偏差指數為 3 + 127 =130, 再把 130 轉換為長度為 8 位元的二進位 (10000010)2 , 於是可以得到偏差指數的部份就是 10000010 。

34

Page 35: 第 5 章 數字系統與資料表示法

5-4 浮點數的表示法 最後是小數部份 , 小數部份即是正規化後二進位的小數部份 , 至於小數點前面那個 1, 則因為所有正規化的數字都有 , 所以不用記錄 , 只要顯示後面的小數部份 10001, 但小數共有 23 個位元 , 所以要把後面的位元補上 0 。最後得到的浮點數表示如下:

35

Page 36: 第 5 章 數字系統與資料表示法

5-5 文字的表示法 將文字資料轉換成二進位碼的系統就稱為編碼系統。

36

Page 37: 第 5 章 數字系統與資料表示法

5-5 文字的表示法 常用的英文電腦編碼系統

ASCII 碼:是美國標準資訊交換碼 (American Standard Code for Information Interchange) 的縮寫;它不但包含英文大、小寫字母 , 還有阿拉伯數字、控制字元以及各種符號。

ISO8859 碼:由於歐洲地區語系的文字除了 26 個英文字母 ( 也就是拉丁字母 ) 外 , 還包含了拉丁字母的變形 ( 例如上下標 ) 與其他字母 (例如希臘字母 ) 等 , 因此 ASCII 碼的 128 個字元顯然不夠用。

37

Page 38: 第 5 章 數字系統與資料表示法

5-5 文字的表示法 EBCDIC 碼: EBCDIC 碼的全名是

Extended Binary Code Decimal Interchange Code, 是美國 IBM 公司所制定的編碼系統 , 主要使用在 IBM 一部份大型主機上。

38

Page 39: 第 5 章 數字系統與資料表示法

5-5 文字的表示法 常用的中文電腦編碼系統

Big5 碼:由資策會工業局聯合 13 家業者於 1984 年所共同制定的編碼系統 , 包含了 5401 個常用字、 7652 個次常用字及 408 個符號 ( 含標點符號、注音符號、單位符號…… ), 共 13461 個字。

CP950 碼: CP950 (CodePage 950) 碼也稱為 MS950 碼 , 由微軟公司所發展 , 從 Big5 碼擴充而來的 , 其應用於微軟的 Windows 作業系統中。

39

Page 40: 第 5 章 數字系統與資料表示法

全球統一的編碼系統 它是由 Unicode 協會及 ISO 國際標準化組織針對各國文字、符號制定的統一性編碼系統 , 將全球語言編在一起 , 而達成統一編碼的目的。

40