投影片 1

Similar documents
Microsoft Word - CS-981.doc

A-1 資料在電腦中的儲存單位 本節要介紹何謂電子資料處理及資料在電腦中的儲存單位有哪些 A-1-1 電子資料處理 電子資料處理 (Electronic Data Processing, EDP) 簡單的來說就是利用電腦進行資料處理的工作 舉個例子來說, 在早期的資料大多是使用人工慢慢計算, 而在計

第 3 章 数 据 在 计 算 机 中 的 表 示 43 在 进 位 计 数 制 中 有 数 码 数 位 ( 位 置 ) 基 数 和 位 权 等 用 语 数 码 是 在 一 个 计 数 制 中 用 来 表 示 数 值 的 符 号 ; 数 位 是 指 数 码 在 一 个 数 中 所 处 的 位 置 ;

Microsoft Word - DA 資料處理-講義-01

0 0 = 1 0 = 0 1 = = 1 1 = 0 0 = 1

Autodesk Product Design Suite Standard 系統統需求 典型使用用者和工作流程 Autodesk Product Design Suite Standard 版本為為負責建立非凡凡產品的設計師師和工程師, 提供基本概念設計計和製圖工具, 以取得令人驚驚嘆

電腦概論

4

CHAPTER VC#


實驗 使用 IPv4 和 IPv6 計算摘要路由 拓樸 位址分配表 子網 IPv4 位址 IPv6 位址 HQ 的 LAN / :DB8:ACAD:E::/64 HQ 的 LAN / :DB8:ACAD:F::/64 EAS

投影片 1

Microsoft Word - 最新正文.doc

Microsoft Word - ACI chapter00-1ed.docx

表二 105 年國中教育會考英語科閱讀與聽力答對題數對應整體能力等級加標示對照表 閱讀答 對題數 聽力答對題數 待加強待加強待加強待加強待加強待加強待加強待加強待加強待加強待加強待加強

01 用 ActionScript 3.0 開始認識 Flash CS3 Flash 是應用在網路上非常流行且高互動性的多媒體技術, 由於擁有向量圖像體積小的優點, 而且 Flash Player 也很小巧精緻, 很快的有趣的 Flash 動畫透過設計師的創意紅遍了整個網際網路 雖然很多人都對 Fl

組合邏輯的設計

Microsoft Word - ok翁志文、張佳音...doc

Microsoft Word - 全華Ch2-05.doc

Chapter 3

CC213

CH01.indd

基本數學核心能力測驗_行為觀察記錄紙_G2版本

Microsoft PowerPoint - C_Structure.ppt

untitled

SW cdr

一、乘法公式與多項式

Microsoft PowerPoint - sp2 [相容模式]


QR Code 技術之探討

LQ-2090CII/LQ-2090CIIN

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

iziggi

當 地 情 形 還 不 熟 悉 4 得 勝 的 歡 似 虎 : 形 容 因 勝 利 而 得 意 忘 形 5 不 吃 無 工 之 食 : 比 喻 人 不 能 無 緣 無 故 接 受 優 待 或 贈 與 4. 請 根 據 文 意, 在 中 填 入 正 確 的 成 語 代 號 ( 甲 ) 優 游 自 在

优合会计考点直击卷子之财经法规答案——第八套

Microsoft Word - _m30.doc

嘉義市政府暨附(所)屬機關電話禮貌測試實施要點

Microsoft PowerPoint - 3C¬ì§Þ»P¥Í¬¡-chapter2

<4D F736F F D DA5BFA6A1C476C1C92DBEC7ACECB8D5A8F728B57BB35D292E646F63>

* 2

APA Preliminaries Text Reference 1. Cover Page 2. Title Page 3. Signature Page 4. Advisor s recommendation letter 5. Approval page 6. Copyri

/ / (FC 3)...

<4D F736F F D B0D3B77EC3FEA7DEC3C0C476C1C9A5BFA6A1B8D5C3442DB57BA6A1B35DAD702DBEC7ACEC2E646F6378>

Microsoft Word - 投影片ch03

<4D F736F F D20A5C1B6A1B3E0C2A7B2DFAB55A4B6B2D02E646F63>

CC213

目次 CONTENTS 2 1 乘法公式與多項式 二次方根與畢氏定理 因式分解 一元二次方程式

山东2014第四季新教材《会计基础》冲刺卷第三套

商品設計系專業證照列表 系務會議通過 系所代碼 雲科大證照代碼 證照名稱國內 / 國外級數 / 分數證照類別發照單位 本校認列獎勵之級別 Adobe Certified Associate Visual Communication using Adobe P

現在人類獲取地球內部訊息的方法, 是從可能影響我們身家性命安全的地震, 用數學模型把地震資料轉換成地震波速度, 進而獲得地底物質密度與深度的關係 地下世界知多少 km/s g/cm 3 P Gpa km S P S 3,000 3,000 ak K 透視地底 Percy Bridgma

第一組個人電腦主機

Microsoft PowerPoint - ch02

Microsoft PowerPoint - 遊戲企劃

Microsoft Word - ACL chapter02-5ed.docx

untitled

Microsoft PowerPoint - chap4.ppt

jsj0.nps

SuperMap 系列产品介绍

!49 第 二講 資料型態 運算子與表示式 講師 : 李根逸 (Ken-Yi Lee),

<4D F736F F D20B0EAA4E52D3939AEC9A8C6B1A1B9D2C344A5BB2E646F63>

设 计 竞 赛 内 容 和 评 分 标 准, 旨 在 引 导 职 业 学 校 电 子 商 务 计 算 机 市 场 营 销 等 相 关 专 业 的 教 学 改 革, 展 示 职 业 院 校 电 子 商 务 相 关 专 业 的 建 设 成 果, 推 动 电 子 商 务 职 业 教 育 的 发 展 和 创

IT Essentials 5

縣 94 學年度 上 學期 區 國民中學 Q 年級 R 領域教學計畫表 設計者:

使用手冊

Chapter 3 Camera Raw Step negative clarity +25 ] P / Step 4 0 ( 下一頁 ) Camera Raw Chapter 3 089

考 查 知 识 点 肝 气 疏 泄 调 畅 气 机 的 作 用, 主 要 表 现 在 以 下 几 个 方 面 :(1) 促 进 血 液 与 津 液 的 运 行 输 布 ;(2) 促 进 脾 胃 的 运 化 功 能 和 胆 汁 分 泌 排 泄 ;(3) 调 畅 情 志 ;(4) 促 进 男 子 排 精

南華大學數位論文

Microsoft PowerPoint - chap7.ppt

Windows Acrobat 4.0 Acrobat Acrobat 3.x Acrobat Reader 3.x - 75 MB Acrobat Acrobat 4.0 Acrobat Reader 4.0 Acrobat 4.0 Acrobat 3.x Acrobat

TCP/IP TCP/IP OSI IP TCP IP IP TCP/IP TCP/IP

Microsoft PowerPoint - Chapter3

就 构 成 了 盗 窃 罪 与 破 坏 交 通 设 施 罪 的 想 象 竞 合, 按 照 其 中 处 罚 较 重 的 犯 罪 处 罚 5. 答 案 :B 本 题 主 要 考 察 如 何 区 分 收 买 被 拐 卖 的 妇 女 儿 童 罪 与 拐 卖 妇 女 儿 童 罪 的 共 犯 问 题 ( 对 向

Microsoft Word - Delta Controller ASCII_RTU_TC

BCD 碼轉二進制碼 投稿類別 : 工程技術 篇名 : BCD 碼轉二進制碼 作者 : 粘家誠 高雄高級工業職業學校 資訊科三年甲班 指導老師 : 鄭鈞升老師 第 1 頁

目 录 软 件 概 述 软 件 用 途 软 件 运 行 系 统 配 置... 3 使 用 入 门 软 件 登 录 与 退 出 页 面 介 绍... 6 组 别 账 号 编 辑 组 别 编 辑.

cover1-4.ai

Python 與中文處理

DeskJet F2180 DeskJet F4185 Deskjet F4280 DeskJet D2460 OK N/A N/A DeskJet 1660 OK ( 無提供 Win 2000 驅動 ) N/A N/A PSC 1315 Photosmart 2575 Photosmart C13

ebook37-4

CU0594.pdf

校友会系统白皮书feb_08

Microsoft PowerPoint - SAGE 2010

<4D F736F F D B77CC4B3ACF6BFFD2DB0D3B77EC2B2B3F8C2BEBAD82E646F63>

ACI pdf

Transcription:

本章重點 人類習慣以十進位的計量方式來計算, 但是電腦只能處理二進位形式的資料 輸入資料到電腦之後, 必須先轉換成二進位的資訊, 也就是由 0 與 1 所組成的一長串資料, 電腦才能運算 記錄 處理 顯示... 為了能更進一步了解計算機, 必須先了解數字系統及各類資料的表示法! 數字系統的種類 數字系統間的轉換 二進位數字系統之運算 資料表示法 常見的英文與中文電腦編碼系統 2

3.0 電腦的基本單位 (1/2) 類比訊號 (analog signal) 是連續的訊號 數位訊號 (digital signal) 是以預先定義的符號表示不連續的訊號 3

電腦的基本單位 (2/2) 無論是位元組 (byte) 還是字組 (word), 對電腦的儲存容量來說, 仍然太小 為了計量方便, 通常採用千位元組 (kilobyte,kb, 約 103) 百萬位元組 (megabyte,mb, 約 106) 甚至是十億位元組 (gigabyte,gb, 約 109) 等單位 4

3-1 數字系統 懂得電腦所使用的數字系統 可以了解電腦儲存及計算資料方式 可以了解電腦內部的資料形態, 例如, 文字資料, 數值資料或多媒體資料等 5

3-1-1 關於數字系統 自古以來, 人類習慣以十進位來計算事物, 同時也會使用到其他的數字系統, 最典型的例子 : 時間的計算, 時與分採六十進位 日與時的換算則為二十四進位 年與月則使用十二進位來計算 也會用一打 (12 個 ) 這樣的單位來計算東西的數量, 而傳統的重量單位 - 台斤與兩的計算, 則是十六進位, 即 1 台斤等於 16 兩 6

3-1-1 關於數字系統 電腦和人一樣, 亦有屬於自己的數字系統, 但由於它只能處理 0 與 1 的資料, 所以在電腦的世界中只有二進位系統 如果要人類來閱讀由 0 與 1 組成的一長串資料, 實在是相當困難, 例如,(10010010) 2 對於電腦內部所儲存的資料, 一般會以八進位 (222) 8 十六進位 (92) 16, 甚至十進位 (146) 10 來表示, 以方便人類閱讀 7

3-1-2 常用的數字系統 十進位數字系統 (Decimal) 十進位是一套以 10 為基數, 逢 10 即進位的數字系統, 由 0 1 2 3 4 5 6 7 8 9 等十個數元所組成 目前人類世界中最被廣泛採用的一套系統 二進位數字系統 (Binary) 二進位是一套以 2 為基數, 逢 2 即進位的數字系統, 在此系統下, 任何數都只能用 0 和 1 兩個數元所組成的符號來表示 電腦所使用的數字系統 8

常用的數字系統 八進位數字系統 (Octal) 八進位是一套以 8 為基數, 逢 8 即進位的數字系統, 在此系統下, 只能使用 0 1 2 3 4 5 6 7 等八個數元, 如果運算過程中產生了大於或等於 8 的數, 便要往前進位 十六進位數字系統 (Hexadecimal) 十六進位是一套以 16 為基數, 逢 16 即進位的數字系統, 此數字系統是由 0 1 2 3 4 5 6 7 8 9 A B C D E F 等十六個數元所組成 相對於十進位來看的話, A=10 B=11 C=12 D=13 E=14 F=15 9

常用的數字系統 10

常用的數字系統 一般二進位數值都會加個小括弧並使用下標標註 2, 例如 :(101101 ) 2, 而十六進位則標註 16, 例如 (ACD8) 16, 依此類推 11

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

3-2-1 二進位與十進位間的轉換 二進位與十進位的數字系統如何互相轉換, 看看十進位的例子 : (123.45) 10 = 1 x 10 2 +2x10 1 +3x10 0 +4x10-1 +5x10-2 整數部 小數部 13

(1) 二進位轉換成十進位 二進位轉換成十進位 整數部份 : 在小數點左邊第一位的位值為 2 0 第二位的位值為 2 1 第三位的位值為 2 2... 小數部份 : 在小數點右邊第一位的位值為 2-1 第二位的位值為 2-2... 等依此類推 14

二進位轉換成十進位 只要將每一個二進位數乘以該數的位值, 然後相加即可獲得相對應的十進位數值 以下以 (11101.11) 2 轉換成十進位來做示範 : 15

範例 16

(2) 十進位轉換成二進位 將十進位轉換成二進位, 可分為兩個部份來處理 在此以 (29.75) 10 轉換成二進位來做示範 整數部份 將整數部份連續除以 2, 並保留 餘數, 直到除法運算後的商數為 0 時停止 然後由最後一次產生的餘數開始, 依序由左向右排列, 即可完成整數部份的轉換 17

十進位轉換成二進位 18

十進位轉換成二進位 小數部份 將小數部份乘以 2, 保留所得乘積的 整數部份, 繼續將乘法運算後所得的小數部份乘以 2, 直到所得的小數為 0 時停止 然後由第一次取得的整數開始, 依序由左向右排列, 即可完成小數部份的轉換 注意 : 循環小數的產生和處理 19

十進位轉換成二進位 取走 1 後, 要記得補 0 最後再將整數部份加上小數部份, 便是完整的標示 :11101 2 + 0.11 2 = 11101.11 2 (29.75) 10 = (11101.11) 2 20

練習一 轉換二進位 (1100.11) 2 為十進位 (12.75) 10 轉換十進位 (63.625) 10 為二進位 (111111.101) 2 21

3-2-2 八進位與十進位間的轉換 學會二進位與十進位的轉換方式後, 接下來八進位與十進位的轉換也可以比照處理 22

(1) 八進位轉換成十進位 八進位的轉換原理和二進位相同 整數部份 在小數點左邊第一位的位值為 8 0 第二位的位值為 8 1... 小數部份 在小數點右邊第一位的位值為 8-1 第二位的位值 8-2... 23

八進位轉換成十進位 因此八進位轉換成十進位, 只要將每一個八進位數乘以該數的位值, 然後相加即可求得 在此以 (127.3) 8 轉換成十進位來做示範 : 24

範例 25

(2) 十進位轉換成八進位 要將十進位轉成八進位, 同樣地可分為整數與小數兩部份來處理 在此以 (87.375) 10 來示範 : 整數部份 採連續除以 8, 並保留 餘數, 直到除法運算後的商數為 0 時停止 然後由最後一次產生的餘數開始, 依序由左向右排列, 即可完成整數部份的轉換 26

十進位轉換成八進位 27

八進位與十進位間的轉換 小數部份 將小數部份乘以 8, 保留所得乘積的 整數部份, 繼續將乘法運算後所得的小數部份乘以 8, 直到所得的小數為 0 時停止 然後由第一次取得的整數開始, 依序由左向右排列, 即可完成小數部份的轉換 28

八進位與十進位間的轉換 最後將整數部份加上小數部份 :127 8 + 0.3 8 = 127.3 8 (87.375) 10 = (127.3) 8 29

3-2-3 十六進位與十進位間的轉換 了解八進位與十進位的轉換方式後, 接著來學習十六進位與十進位要如何轉換 30

(1) 十六進位轉換成十進位 十六進位的轉換原理和二進位相同, 整數部份 在小數點左邊第一位的位值為 16 0 第二位的位值為 16 1... 小數部份 在小數點右邊第一位的位值為 16-1 第二位的位值為 16-2... 十六進位轉換成十進位, 只要將每一個十六進位數乘以該數的位值, 然後相加求得 在此以 (BCE.1E) 16 轉換成十進位來做示範 : 31

十六進位轉換成十進位 32

範例 33

(2) 十進位轉換成十六進位 轉換時亦分為整數與小數兩部份來處理 ; 在此以 (43969.71875) 10 轉成十六進位來做示範 整數部份 採連續除以 16, 並保留 餘數, 直到除法運算後的商數為 0 時停止 然後由最後一次產生的餘數開始, 依序由左向右排列, 即可完成整數部份的轉換 34

十進位轉換成十六進位 35

十進位轉換成十六進位 小數部份 將小數部份乘以 16, 保留所得乘積的 整數部份, 繼續將乘法運算後所得的小數部份乘以 16, 直到所得的小數為 0 時停止 然後由第一次取得的整數開始, 依序由左向右排列, 即可完成小數部份的轉換 36

十進位轉換成十六進位 最後將整數部份加上小數部份便是完整的標示 : ABC1 16 +0.B8 16 = ABC1.B8 16 (43969.71875) 10 = (ABC1.B8) 16 37

與十進位互轉的通則 十進位轉成 r 進位的原則 整數部份除以 r, 由下往上取餘數 小數部份乘以 r, 然後由上往下取整數 r 進位轉成十進位的原則 將每個位數乘以對應位值後, 全部相加即可 38

練習二 轉換十進位 (63.75) 10 為八進位 (77.6) 8 轉換十進位 (63.62890625) 10 為十六進位 (3F.A1) 16 39

3-2-4 八進位與二進位間的轉換 右表為八進位數與等值的二進位數之對照表 : 二進位與八進位互相轉換時, 請以 3 個 1 組為單位來轉換會較為方便 40

(1) 二進位轉換成八進位 欲將二進位轉換成八進位 整數部份 由右至左, 每 3 個分成 1 組, 不足 3 個即往前補 0 小數部份 則由左至右每 3 個分成 1 組, 不足往後補 0 然後再將其轉換成對應的八進位數即可 以 (11100001110.101) 2 轉換成八進位做示範 41

範例 42

(2) 八進位轉換成二進位 同理, 當八進位要轉換成二進位時, 只要將八進位的數值轉換成每 3 個 1 組的二進位數值即可 以 (3416.5) 8 轉換成二進位為例 43

範例 44

3-2-5 十六進位與二進位間的轉換 右表為十六進位與等值的二進位數對照表 : 二進位與十六進位轉換時, 採每 4 個 1 組為單位來轉換 45

(1) 二進位轉十六進位 二進位數換成十六進位數時, 每四個位數合成一項 46

二進位轉換成十六進位 欲將二進位轉換成十六進位 整數部份 由右往左每 4 個 1 組進行轉換, 不到 4 個時, 就在前端補 0, 然後再對照上表, 將其轉換成對應的十六進位數即可 小數部份 由左往右每 4 個 1 組進行轉換, 不到 4 個時, 就在後面補 0, 然後再對照上表, 將其轉換成對應的十六進位數即可 47

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

範例 49

(2) 十六進位轉換成二進位 同理, 當十六進位要轉換成二進位時, 只要將十六進位的數值轉換成每 4 個 1 組的二進位數值即可 以 (2F9.3A) 16 轉換成二進位為例來做示範 : 50

範例 51

3-2-6 十六進位與八進位間的轉換 (1) 八進位轉換成十六進位 欲將八進位轉換成十六進位, 可以先轉換成二進位數字, 再將二進位轉換成十六進位 以 (346.7) 8 轉換成十六進位為例來做示範 : 52

(2) 十六進位轉換成八進位 欲將十六進位轉換成八進位, 必須先轉換成二進位數字之後, 再由二進位轉成八進位即可 以 (E6.E) 16 轉換成八進位為例來做示範 : 53

二 八 十六進位轉換的通則 二進位與八進位 要以 3 個為 1 組來轉換 二進位與十六進位 要以 4 個為 1 組來轉換 八進位與十六進位 必須先轉成二進位後再進行 4 (or 3) 個為 1 組轉換 54

練習三 (1/2) (110110101.11011) 2 的十六進位表示法為 : 55

練習三 (2/2) 十六進位 (1B5.D8) 16 轉成二進位 八進位 八進位 :(665.66) 8 56

3-3 資料型態表示法 57

資料表示法 儲存在電腦中的資料, 基本上有兩種型態 : 數值資料 例如, 正數與負數 整數與浮點數 文字資料 例如, 日文字 韓國字, 中文字 英文字等 在電腦內部使用 0 和 1 的所構成的訊號, 數值或文字資料必須用二進位數來表示 58

3-3-1 數值資料表示法 (1/2) 二進位數字都只是正整數而已, 電腦內部並沒有 + - 等符號來表示正 負數, 也沒有表示小數點的符號 受限於記憶體的限制, 電腦內部無法表示很大的數, 例如, 一個數用 16 位元來儲存的話, 其數值範圍為 0(2 0-1)~65535(2 17-1) 課題 如何表示負數或小數 如何表示更大或更小的數 59

數值資料表示法 (2/2) 因此, 探討電腦系統中數值表示的方法時, 要特別考慮三個問題 : 資料的長度 正負數的表示 浮點數表示法 為了解決這些問題, 便有人提出幾種不同的負數與浮點數表示方法 60

(1) 負數的表示法 負數常見的表示法 最高位元表示法 ( 固定位元表示法 ) 1 的補數表示法 2 的補數表示法 為了方便說明, 以一個整數佔 8 個 Bits 為範例, 分別介紹如下 : 61

數值資料表示法 (1/5) 最高位元表示法 發現此法的缺點了嗎? 以最高位元來表示正負號 ( 以一個數使用 8 位元表示為例時, 第 8 位元即為符號位元 ) 最高位元為 0 表示正數, 最高位元為 1 表示負數, 如右表 62

數值資料表示法 (2/5) 2 的補數表示法 在 2 的補數 (2's complement) 表示法裡, 一個數的負數即是其 1 的補數值再加 1, 如下表示 : (-127)+(-1) 63

數值資料表示法 (3/5) 缺點改善了嗎? 1 的補數表示法 使用 1 的補數 (1's complement) 表示法時, 一個數的負數即是將該數的每一位元數值 0 1 互換 ( 即 1 變 0, 0 變 1) 如下表 : 64

數值資料表示法 (4/5) 1 的補數表示法與最高位元表示法具有同樣的缺點, 都有 2 個 0 (00000000 與 11111111 的問題 ), 因此不被電腦所採用 在電腦裡, 實際被使用的是 2 的補數表示法 65

數值資料表示法 (5/5) 由上表可知, 只有在 0 時, 該數 1 的補數加 1 才會使得最高位元進位, 此時該進位的位元捨棄, 使得該數 ( 0 ) 的正負數表示法相同 以 2 的補數法來表示負數, 就不會有 兩種方式表示 0 的困擾了 正數由 1 ~ 127 總共有 127 個 ; 負數由 -1 ~ -128 再加上 1 個 0, 所以 8 個位元總共可以表示 256 個數 以 2 的補數法來表示負數, 可以比其他兩種方法多表示一個數 66

2 的補數另一個好處 (1/2) 減法可以用加法計算 例如,4-2=4+(-2)=0100+1110=10010 練習 :24-16=?( 使用加法執行此運算, 用 8 個位元表示一個數字的例子 ) 67

2 的補數另一個好處 (2/2) 如何用加法計算 2-4?( 假設用 4 位元儲存一個數 ) 2-4=2+(-4)=0010+1100=1110 <= 2 的補數 => 負數 將 2 的補數減 1 => 1101 取 1 的補數 => 0010 答案 :-2 計算機的 CPU 可以不用減法器也可執行四則運算 68

2 補數表式法位元字串與數值的對應關係 課題 : 溢位 (Overflow) -128-1=? 127+1=? 假設 : 一個整數用 8 個位元表示 10000000 (-128) + 11111111 (-1) 101111111 01111111 (+127) 69

(2) 浮點資料表示法 在電腦中, 當用到含有小數的數字 ( 如 3.14), 或是整數的值 ( 如 10 的 20 次方 ) 超過所有位元所能表現的最大值時, 怎麼辦? 例如, 只使用一個位元組 (127~-128) 來表示數值時, 要表示 128 的話????? 課題 : 如何使用有限的記憶體空間, 表示無窮大的數外, 還可以表示小數和正負數? 這時計算機需要使用一種特別的表示方法, 稱為浮點數 (floating point) 表示法 70

數值資料表示法 (1/7) 在正式介紹浮點數表示法之前, 必須先說明正規化 (normalization) 所謂的正規化, 是將該數字轉換成二進位的 1.xxx 2 指數值形式 ; 例如要計算 (12.25) 10 經正規化的結果, 需先將其轉換為二進位 (12.25) 10 = (1100.01) 2, 再正規化成 1.10001 2 3 (0.25) 10 的正規化結果為何? (0.01) 2 =1.0x2-2 上示 1.10001 2 3 可解讀出以下資訊 : 此數值為正數 指數值為 3 小數 ( 尾數 ) 部份為 10001 這些資訊在轉換成浮點數表示法時用到 71

數值資料表示法 (2/7) 相對於之前介紹的正負整數表示方法, 浮點數最主要的差別就在於小數點的位置 之前所介紹儲存正負整數的方法, 小數點都固定在最右邊, 所以其又稱為定點表示法 72

數值資料表示法 (3/7) 不同 CPU 有其各自的浮點數表示法, 一般較常採用 IEEE 協會所訂定的浮點數表示法標準 IEEE 754, 可分為如下所示兩種 : 單精確度 (single precision) 雙精確度 (double precision) 兩者的差別在於 : 單精準度以 32 個位元來顯示浮點數 雙精準度以 64 個位元來顯示浮點數 73

IEEE 754 標準 ( 小數部份 ) 74

數值資料表示法 (4/7) 以下以單精確度為例來說明, 其表示方法如下 : 75

數值資料表示法 (5/7) 正 / 負符 表示這個數字是正數還是負數 ( 用 0 表示正數, 1 表示負數 ) 偏差指數 表示這個數字的指數部份 (8 個位元可顯示 0 ~ 255 個數值 ) 由於要表示的數字可能很大, 也可能很小, 因此其指數部份可能為正或負 為了要能顯示正負兩種指數, 因此以 127 為指數偏差值 ; 將數字的指數值加上指數偏差值 127, 即為偏差指數 小數 ( 尾數 ) 部份 表示數字的小數部份 以二進位形式, 且正規化後的小數部份 ( 不包含第一個數字 1) 76

數值資料表示法 (6/7) 以 (12.25) 10 為例, 看看如何以單精確度的浮點表示法來表示 : 由於是個正數, 所以第一個位元已經確定是 0 接著將其正規化成 1.10001 2 3, 此時便可計算出偏差指數為 3 + 127 = 130 再把 130 轉換為以 8 位元顯示的二進位 (10000010) 2, 可以得到偏差指數的部份就是 10000010 77

數值資料表示法 (7/7) 最後是小數部份, 小數部份即是正規化後的二進位小數部份, 至於小數點前面的 1, 則因為所有正規化的數字都有 1, 所以電腦會自動記憶, 因此只要顯示後面的小數部份 10001, 但小數共有 23 個位元, 所以把後面的位元補上 0 即可 最後得到的浮點數表示如下 : 78

練習四 (1/2) (-41) 10 的 1 的補數 ( 用 8 位元來表示數值 ) 79

練習四 (2/2) 實數 (10110.100011) 2 的單精度浮點數表示法? 80

練習五 以 2 的補數來表示整數, 則兩個 8 位元整數相減 01010101-11011001 結果為 : (A)10000011 (B)01111100 (C)11111100 (D)10000100 下列何者可以表示八位元電腦中的 -10( 以 2 的補數法表示 )? (A)10001010 (B)00001010 (C)11110101 (D)11110110

練習五解答 使用 2 的補數來完成減法運算, 則 A-B = A+(-B) = A+(B 的 2 的補數 ) 01010101-11011001 = 01010101 +00100111 = 01111100 答案 (B) -10 = 00001010 使用 2 的補數結果為 1 的補數加 1,00001010 11110101 + 1 11110110 答案 (D)

3-3-2 文字資料表示法 (1/5) 電腦不但可以幫忙做快速精確的數值運算, 還可以做文字資料的處理, 要處理文字資料, 就必須先瞭解文字資料在電腦中的表示方法 數值資料在電腦內部是以 二進位 的形式來表示, 這是因為電腦只能處理二進位形式的資料 同樣地, 輸入電腦的文字資料, 亦會被轉換成二進位碼的形式儲存 這種將文字資料轉換成二進位碼的系統就稱為編碼系統, 以英文字母為例, 可以建立一個編碼表 : 83

文字資料表示法 (2/5) 84

文字資料表示法 (3/5) 把每一個英文字母編上一個號碼, 建成一套編碼表 ; 這個編碼表可以存放在鍵盤內的電路上 當按下一個鍵時, 鍵盤的電路便依表格的規定, 把該鍵對應的二進位碼送往電腦主機 例如按下 A 鍵, 鍵盤便會把其相對應碼 65 的二進位數 01000001 輸入電腦 當想將文字資料輸出時, 編碼系統亦會將二進位碼轉換成對應的字元符號, 再藉由輸出設備顯示或列印出來 85

文字資料表示法 (4/5) 86

文字資料表示法 (5/5) 電腦是以數字碼來表示文字資料 例如, 65 代表 A, 66 代表 B 像這種以數值代表字元的方式稱為編碼, 不同的系統可能會使用不同的編碼方式 87

(1) 常用的英文電腦編碼系統 (1/6) 在 PC 上常用的英文電腦編碼系統有 3 種 ASCII 碼 ( 唸做 as-key ) 是美國標準資訊交換碼 ( American Standard Code for Information Interchange ) 的縮寫 不但包含英文大 小寫字母, 還有阿拉伯數字 控制字元以及各種符號等 ASCII 碼共有 128 個, 每一個碼都對應一個字元, 在電腦中是以 1 個 Byte 來儲存 其數值與字元的對應表如下 : 88

常用的英文電腦編碼系統 (2/6) 89

常用的英文電腦編碼系統 (3/6) 由於 1 byte ( 8 bits ) 可以表示出 2 8 = 256 種資料, 因此在 PC 上又將 ASCII 碼擴充, 多了 128 個擴充符號字元 ( 號碼為 128 ~ 255 ), 可用來繪製表格的格線, 或印出特殊的字母 符號等 90

ASCII 擴充符號字元 (Extended ASCII) 91

常用的英文電腦編碼系統 (4/6) ISO8859 碼 ISO 將編碼系統由 7 個位元擴充到 8 個位元, 其中 0 到 127 的編碼與 ASCII 碼相容 128 到 255 碼則依地區不同, 包含更多的特殊字元 如拉丁字母 特殊字母的上下標與其他符號等 ISO8859 的編碼系統又依地區語系區分成幾個部份, 例如 : 丹麥和芬蘭等語系使用 ISO8859-1 的編碼系統 羅馬尼亞和波蘭等語系則採用 ISO8859-2 的編碼系統 92

常用的英文電腦編碼系統 (5/6) EBCDIC 碼 EBCDIC 碼 (Extended Binary Code Decimal Interchange Code) 是 1963~1964 年美國 IBM 公司所制定的編碼系統 EBCDIC 碼的每一個字元是由 8 個位元所組成, 共有 28 種組合, 可以表示 256 個字元 IBM 迷爾級以上電腦的標準碼 缺點 : 英文字母不是連續地排列, 中間出現多次斷續, 為撰寫程式的人帶來了一些困難 93

EBCDIC 編碼表 :CP037( 英語 ) 94

常用的英文電腦編碼系統 (6/6) BCD(Binary Coded Decimal) 是專門用來表示數字資料 (0~9) 的編碼系統, 它的編碼方法是以 4 個 2 進位的數位來表示 10 進位數字的一個數位 例如下表的編碼 ( 現在已不使用 ) 95

(2) 常用的中文電腦編碼系統 以英文來說, 8 個位元 ( 2 8 =256 ) 就足以表示所有的英文字母 阿拉伯數字及許多特殊符號 然而, 中文至少要有 13,053 字 (BIG5 碼 ), 但是 8 個位元卻不足以表示所有的中文字 因此, 中文 ( 日文或韓文或簡體字 ) 都是以 2 bytes( 16 bits ) 來編碼 ; 這些碼都是中文字儲存在電腦內部時的編碼, 所以又稱為中文的內碼 96

常用的中文電腦編碼系統 (1/3) Big-5 由台北市電腦公會聯合業者共同制定的編碼系統, 包含常用字 次常用字以及各式符號和擴充字, 字符空間是由非連續的 94X157 矩陣構成, 共可容納 14, 758 個位元 名字的由來 民國 72 年左右, 電腦界有鑑於電腦軟體的五大主流 ( 文書處理 電子試算表 繪圖 資料庫與通訊 ) 是很有發展空間, 也是普及資訊應用非常重要的研發方向 因此, 五家國內的電腦大廠, 例如宏碁公司, 聯合欲順應潮流設計大型套裝軟體 ( 命名 五大軟體 ) 來達成這項重大歷史任務 97

幾個中文字的 BIG5 碼 高位元組和低 位元組 98

常用的中文電腦編碼系統 (2/3) MS950 碼 由微軟公司開發, 應用於 Windows 的作業系統中, 由於使用者很多, 近來也成為常見的編碼方式 原本 Windows 作業系統內部是採用 Unicode 的編碼方式, 但為了配合多國語言使用, 系統會根據使用者的國籍設定, 在輸出 輸入和顯示時, 會搭配以不同的 MS*** 編碼方式呈現 例如 MS950 便是代表繁體中文的編碼方式 99

常用的中文電腦編碼系統 (3/3) 中國 ( 簡體字 ) 的編碼系統 HZ 碼 (7bit 通訊碼 ) GB 碼 (6763 字 ) 和 GBK 碼 (2 萬多字 ) 日文的編碼系統 ( 六千多字 ) JIS(7bit 通訊碼 ), Shift-JIS (window 用 ), EUC-JP (Unix 用 ) 100

漢字字碼關係圖 101

(1) 亂碼 同樣的內容竟顯現出不一樣的結果 原因就是套用了不一樣的字碼 102

文件亂碼現象 103

編碼 Unicode(UTF8) 編碼 簡體中文(GB18030) 104

利於網路應用的統一編碼系統 近年來為了便利網路上的相關應用, 也出現了 Unicode 這種編碼, 它將各個國家的常用 共用字編在一起, 藉此達成統一編碼的目的 例如, 網頁的編碼 Unicode 碼 (Universal Multiple Octet Coded Character Set) 由 Unicode 國際標準組織針對各國文字 符號制定的統一性編碼系統, 內容包含符號 各國文字, 並保留部份擴充字元的空間 105

Unicode 碼 Unicode 碼 ( 又稱為萬國碼 ), 是 Unicode 技術委員會 (UTC) 所制定的國際性文字碼 隨著網際網路的流行, 國際性文字格式標準的制定工作越來越重要,Unicode 組織於是在 1988 開始著手時 Unicode 的制定工作 106

Unicode 的特性 Unicode 是以 ASCII 為基礎, 使用 16 位元編碼方式來支援世界語言的編碼系統, 它把原本僅佔一個位元的西方字元, 重新設定為類似中文以兩個位元來編碼 如下圖所示 : 107

Unicode 的字元種類與字數 Unicode 的制定工作相當繁複, 必須蒐集 歸納及整理來自世界各地的不同文字 目前 Unicode 收錄的字碼種類與字數整理如右 108

Unicode 碼 (1/4) Unicode 碼也是使用兩個位元組來表示一個文字符號, 因此可以表示 2 16 =65536 個文字符號 不過 Unicode 編碼在處理時, 是將兩個位元組同時處理, 而不是加以組合, 也就是從 1 到第 16 個位元全部拿來使用, 而不是區分為高低兩個位元 因此稱之為 定長式編碼系統, 這避免了像 Big-5 碼合併位元組所會造成的衝突問題 Unicode 碼的最大好處就是對於每一個字元提供了一個跨平台 語言與程式的統一數碼 (digit) 109

Unicode 碼 (2/4) 為了與 ASCII 相容,Unicode 的 0 127 對應原來的 ASCII 編碼, 沒有使用到的位元全部設為 0, 而其它的部份則依不同的國家語系而有所不同 16 位元的 Unicode 又稱之為 UCS2 新的 Unicode 版本則稱之為 UCS4, 它使用 32 個位元來進行編碼, 為了與原來的 Unicode 相容, 其它 0 65535 與原先的 Unicode 編碼相同其餘的部份用來表示少數語言或其它罕見文字在新的作業系統或軟體上, 都已經支援使用 Unicode 編碼, 例如較新版本的 Internet Explorer 與 Windows2000 Windows XP Vista 等等 110

Unicode (3/4) 目的是為了涵蓋電腦所使用的文字與各種語系, 例如英文 中文 日文 拉丁文等等 以 16 位元表示 2 16 個字元, 前 128 個字元與 ASCII 相同 111

Unicode (4/4) 已發展出多種編碼方式 UTF-8 分別以 UTF-16 UTF-32 8 位元 16 位元 32 位元 為基本單元的編碼方式 UTF-8 在全球資訊網最通行,UTF-16 為 Java 及 Windows 所採用, 而 UTF-32 則為一些 Unix 系統使用 e.g. 在 UTF-16 編碼方式中 : 趙 (8D99) 112

Unicode 官方網頁 www.unicode.org 113

(2) 字型與字體 電腦可針對同一個語系 同一套內碼給定不一樣的文字的外觀, 這就稱做 字型 與 字體 字型是固定大小的圖形化字元集合 歸屬於某一個字體族群 (typeface family) 依造字方法區分, 例如點陣字或向量字 字體 (typeface) 則是一群圖像化的字元 例如 : 細明體 標楷體等, 字體通常包含各種大小 (size) 與樣式 (style) 114

一 字體 一般可分為有襯線字體 (serif) 與無襯線字體 (sans serif) 兩類 襯線就是加在英文字母豎線上下端的裝飾細線 例如 新細明體與 Times New Roman 都是有襯線字體 Helvetica 與 Microsoft Sans Serif 字體為無襯線字體 115

二 字寬與字距 字元本身有它的寬度與高度 每個字元的寬度若是不一樣的, 稱為可變字寬, 例如英文字母中的 i 與 w 就不等寬, 大多數 True type 字型都是這種格式 新細明體 若每個字元寬度是固定的稱為固定字寬, 這樣在列印時, 會有對齊的效果, 整份文件看起來較為清晰 細明體 字距是指兩個字元間的間隔 116

中英文混用時的字距 細明體與新細明體的差異就在英數字 117

三 字型的分類 字型可分為兩大類 點陣字 (matrix font) 將文字以一個個方格點排列成矩形所構成, 每一個方格點不是黑色就是白色, 因此可用 1 個位元表示 描邊字 (vector font) 採用數學運算方式產生的字型, 就是把字型的外框用直線與曲線分段加以描述 118

(i) 點陣字 點陣字的點數愈多, 則字型愈精細, 相對著字型所佔的儲存記憶空間也就愈大 119

點陣字的缺點 鋸齒狀現象 字型無法自由放大, 且必須搭配對應的字型 當字型解析度過高時, 相當浪費儲存空間 120

適用點陣字的場合 適合用在解析度較低的顯示器上, 可以表現出清晰的筆畫 在使用較小字型時, 可使用點陣字型, 但必須對較多筆畫的字做減筆畫的動作 使用點陣式印表機時 121

(ii) 描邊字 儲存字型所對應的數學式, 使用時依所需用字的大小, 以公式計算轉換為對應的字形輪廓, 例如, 圓形只需記憶圓心和半徑 在放大或縮小時, 不會有鋸齒狀的問題, 較美觀自然 122

描邊字 Adobe 公司 首先在商業軟體使用描邊字型 PostScript Apple 電腦公司 TrueType 授權微軟公司在 Windows 系統中使用 Adobe 與微軟公司 Open Type 123

(iii) 體驗字型的變化 執行 開始 / 設定 / 控制台 / 字型 命令 使用檔案總管觀看 打開字型資料夾 顯示圖示者即是 TrueType 字型, 連按圖示兩下即可檢視其內容 124

查看 Windows 的字型資料夾 125

(3) 缺字問題 現在用計算機處理漢字資料有許多問題待解決, 其中最根本的問題是 字 不夠用, 這就是所謂的缺字問題 缺字衍生了許多管理上和技術上的嚴重問題: 大幅增加了資料登錄的工作 產生缺字管理和造字管理的困難 字碼所允許的使用者造字空間不夠用 缺字和異體字造成文件處理上的問題 造成資訊共享的障礙, 例如數位典藏 解決方法 : 自造字 126

自造字工具 127

複習 : 文字資料表示法 英文字母 資料 文字 數字 英文文字資料中文文字各大語系文字整數實數 數字字元資料特殊符號資料內碼外碼交換碼正整數負整數浮點數 128

一 基礎問題 一 編碼問題 : 若使用 n 位元表示一群符號, 則最多能表示 種符號? 問題 1. 若使用 1 位元, 最多可表示多少個不同的中文?Ans: 問題 2. 若使用 3 位元, 最多可表示多少個不同的顏色?Ans: 問題 3. 若使用 8 位元編整數, 最多可表示多少個整數?Ans: 問題 4. 若有 38 學生, 需用幾位元編碼? Ans: 問題 5. 若有 256 種顏色, 需用幾位元編碼? Ans: 問題 6. 若要表示 -1000~1000, 需用幾位元編碼? Ans: 問題 7. 若要表示大小寫英文及阿拉伯數字 (0~9), 需用幾位元編碼? 6 8 2 n 11 2 8 256 6 Ans: 129

二 文字資料表示法 英文文字資料 ASCII 常見的編碼方式 : 以 byte 1 = 8 bits 表示. 256 種符號 中文文字資料 a. 常見的編碼方式 : BIG 5 b. 以 bytes 2 = 16 bits 表示 65536 中文字 萬國碼 (Unicode) a. 以 bytes 2 = 16 bits 表示. 65536 種符號 130

三 進階問題 英文文字資料 常見 ASCII 碼 ASCII 碼 10 進位值 16 進位值 空白 00100000 32 20 0 00110000 48 30 A 01000001 65 41 a 01100001 97 61 ASCII 的大小順序 : 空白 < 數字 < 英文大寫 < 英文小寫 空白 < 0<1< <9<A.<Z<a <z 131

磨刀時間 問題 1. 已知 0 的 ASCII 碼之二進位表示為 00110000, 則 1 的 ASCII 碼之二進位表示法為? Ans: 問題 2. 已知 0 的 ASCII 碼之十六進位表示為 30, 則 1 的 ASCII 碼之十六進位表示法為? Ans:31 問題 3. 已知 0 的 ASCII 碼之二進位表示為 00110000, 則 8 的 ASCII 碼之十六進位表示法為? Ans:38 問題 4. 已知 A 的 ASCII 碼之十六進位表示為 41, 則 Z 的 ASCII 碼之二進位表示法為? Ans:01011010 問題 5. 已知 H 的 ASCII 碼之十六進位表示為 48, 則 K 的 ASCII 碼之十六進位表示法為? Ans:4B 00110001 132

四 文字編碼系統 (3) 常見英文編碼系統 BCD 碼 6 位元只用於早期電腦 EBCDIC 碼 8 位元多用於 IBM 電腦 ASCII 碼 8 位元早期使用 7 位元, 後改為 8 位元 中文文字資料 外碼 : 注音 倉頡 大易 無蝦米等 內碼 :Big-5( 繁體中文 ) GB( 簡體中文 國標碼 ) 交換碼 : 通用漢字碼 (CISCII) 萬國碼 (Unicode) 萬國碼 統一碼 國際標準廣用碼 完整收集全世界各大語系 中文繁體與簡體字可直接轉換 133

牛刀小試 題目一 : 萬國碼 (Unicode) 編碼系統是使用多少位元來表示一個字元? Ans:16 題目二 :EBCDIC 碼使用 X 位元來表示一個字,Unicode 使用 Y 位元表示一個字元, 則 X+Y=? Ans:24 134

3-4 二進位四則運算 加法 減法 乘法 除法 135

3-4-1 二進位加法 範例 :111010 2 + 11011 2 (1) 00111010 + 00011011 (2) 1 00111010 + 00011011 01 136

(3) 1 00111010 + 00011011 0101 (4) 1 00111010 + 00011011 10101 137

(5) 1 00111010 + 00011011 010101 (6) 00111010 + 00011011 01010101 138

3-4-2 二進位減法 (1) 00001010-00000011 (2) -1 00001010-00000011 1 139

(3) -1 00001010-00000011 11 (4) -1 00001010-00000011 111 140

(5) 00001010-00000011 00000111 141

3-4-3 二進位乘法 範例 :1101 2 x 1011 2 1101 x 1011 1101 1101 0000 1101 10011111 142

3-4-4 除法 範例 :11101001 2 1001 2 143

課後練習 一 選擇題 1. 電腦的基本單位為 : A. 位元 B. 位元組 C. 字元 D. 字組 3. 下列何者不是繁體中文編碼系統? A. GB B. BIG5 C. CCCII D. 王安碼 5. 下列哪種數值表示法的 -0 為 1111 2 ( 假設使用 4 位元儲存資料 )? A. 帶符號大小 B. 1's 補數 C. 2's 補數 D. 浮點數 144

討論 計算機如何表示數值或文字? 如何表示正整數和負整數? 上網調查何謂 超 64 偏差值 何謂數字系統? 請把十進位 369.25, 轉換成二進位和十六進位 何謂一的補數和二的補數? 補數的好處為何 (hint: 可使用加法運算執行減法運算 ) 何謂浮點數? 何謂正規化? 使用時機為何? 計算機的畫面為何會產生亂碼? 何謂 Byte(B), Kilo Byte(KB), Mega Byte(MB), Giga Byte(GB), Tela Byte(TB), Peta Byte(PB), Exa Byte(EB)? 何謂毫秒, 微秒, 奈秒和皮秒? 練習視窗作業系統所提供的自建字工具 145