SPOTLIGHT 數字系統與編碼系統 1. 相信大家都已經知道,電腦是透過0與1的位元 (bit) 來處理資 料的數位電子裝置。人類社會所使用的數字系統 (number system) ,或稱為數值系統,是早在文明還未進化的時代就已經 因為十根手指頭的關係而採用了十進制至今。 068 2.

Slides:



Advertisements
Similar presentations
1 1.2 信息的表示与存储  数据:数据是对客观事物的符号表示。 如,数值、文字、语言、图形、图像等都是不同形 式的数据。  信息:信息是既是对客观事物变化和特征的反映,又 是事物之间相互作用、相互联系的表征。 信息必须数字化编码,才能用计算机进行传送、存 储和处理。 信息具有针对性和时效性。
Advertisements

12008Fall Semester Introduction to Computer Science Chapter 2 Data Representation and Storage Speaker: Ying Chih Lin Department of Applied Mathematics.
第一單元 建立java 程式.
新世代計算機概論 第2章 數字系統與資料表示法.
數字碼 加權碼 非加權碼 以各種數字系統表示的數碼 (如十進位、二進位、八進 位、十六進位等) BCD碼(又稱8, 4, 2, 1碼)
數位資料表示法 2-1 資料型態 2-2 二進位表示法 2-3 各種進位表示法的轉換 2-4 整數表示法 2-5 浮點數表示法
數位邏輯設計與實習 Ch02基本邏輯閘與布林代數.
電腦硬體基礎 Fundamental of Hardware
汉字编码 汉字编码.
5.1 文本与文本处理 5.2 图像与图形 5.3 数字声音及应用 5.4 数字视频及应用
第二章 數字系統:電腦內部的資料表示法 在第一章中,我們對於電腦有了初步的認識,在深入介紹電腦的各項組成元件之前,首先我們必須先了解另一種不同於人類使用習慣的二進位表示法,由於電腦的半導體、磁性、光學元件適合用來表示二進位,因此二進位表示法非常適合用來設計電腦。
認識倍數(一) 設計者:建功國小 盧建宏.
第四章 數列與級數 4-1 等差數列與級數 4-2 等比數列與級數 4-3 無窮等比級數 下一頁 總目錄.
第二章 數字系統:電腦內部的資料表示法 在第一章中,我們對於電腦有了初步的認識,在深入介紹電腦的各項組成元件之前,首先我們必須先了解另一種不同於人類使用習慣的二進位表示法,由於電腦的半導體、磁性、光學元件適合用來表示二進位,因此二進位表示法非常適合用來設計電腦。
數字系統與資料表示法.
TQC+ JAVA全國教師研習會 PLWeb 程式設計練習平台 簡介.
附錄A 數字系統與資料保護法 A-1 數字系統 A-2 資料表示法.
數字系統與資料表示法 電腦的基本單位 數字系統 數值資料表示法 數值資料與算數運算 數碼系統 浮點數表示法 文字表示法 資料來源:周裕達教授.
數位資料表示法 2-1 資料型態 2-2 二進位表示法 2-3 各種進位表示法的轉換 2-4 整數表示法 2-5 浮點數表示法
第三章: 基本資料型態.
電腦系統 硬體 輸入單元 控制單元 算術邏輯單元 記憶單元 輔助儲存單元 輸出單元 軟體 作業系統 應用軟體 程式語言.
資料表示法與數字系統 主講:顧叔財 資料來源: 計算機概論.
A3-1 數字系統 A3-2 資料表示法 A3-3 資料的儲存
JDK 安裝教學 (for Win7) Soochow University
第1章 認識Arduino.
2-3 基本數位邏輯處理※.
4B冊 認識公倍數和最小公倍數 公倍數和最小公倍數的關係.
SQL Stored Procedure SQL 預存程序.
安裝JDK 安裝Eclipse Eclipse 中文化
數位邏輯與實習 曾建勳 Week 2.
數位邏輯 第2章數字系統 2-1數目系統 2-2數目系統的互換 2-3二進制有號數的加減運算 2-4文數字碼與同位偵錯碼.
系統設定 IE8相容性檢視
第三章 數字系統與資料表示法 課前指引 也許您也早已聽過,電腦實際處理的資料,其實只有0 與1這兩種資料。對電腦來說,所有東西都是一個數字(0 或1 所組成)。字母、字串和標點符號是數字,聲音和圖片是數字,甚至電腦本身的指令也是數字。
6-1 資料表示法簡介 6-2 數值表示法 6-3 數字系統介紹 6-4 數字系統轉換方式
Java 程式設計 講師:FrankLin.
私立南山高中 信息組 電腦研習 電腦資料的備份 中華民國 99年4月20日 星期二.
FPGA計算浮點數的方法 姓名:蔡秉旂.
基數排序法.
第一章 直角坐標系 1-1 數系的發展.
大數據與我 4A 陳駿榜.
網路安全技術 OSI七層 學生:A 郭瀝婷 指導教授:梁明章.
第一單元 建立java 程式.
數學 近似值 有效數值.
第一章 Chapter 1 電腦基礎知識 Chapter 1-電腦基礎知識.
JAVA 程式設計 資訊管理系 - 網路組.
網頁程式概論 建國科技大學資管系 饒瑞佶 2015/9 V1 2016/4 V2 2016/9 V3.
輸入&輸出 函數 P20~P21.
小學四年級數學科 8.最大公因數.
第一次Labview就上手 參考書籍: LabVIEW for Everyone (Jeffrey Travis/Jim Kring)
小數除法.
數字系統 資訊工程系 國立清華大學資訊基礎教育 教學改進計畫 數字系統 資訊工程系 /4/22.
第02章 數字系統與資料表示法.
第02章 數字系統與資料表示法.
第2章 電腦基本原理 2-1 數位化觀念 資訊科技概論--電腦科學導論.
算獨教學 范國祥製作 於新湖國小 算獨資料來源
Ogive plot example 說明者:吳東陽 2003/10/10.
出貨標籤說明 神準科技.
函數應用(二)與自定函數.
1.電腦數字系統介紹 2.電腦數字系統轉換 3.資料在電腦內部的表示法
1-1 二元一次式運算.
國中資訊教育(I) 第二章 認識電腦 2-2 資料的表示.
數位邏輯 第2章數字系統 2-1數目系統 2-2數目系統的互換 2-3二進制有號數的加減運算 2-4文數字碼與同位偵錯碼.
百分數認識.
資料表示方法 資料儲存單位.
因數與倍數.
Chapter 2 二進制數值與數字系統.
第四組 停車場搜尋系統 第四組 溫允中 陳欣暉 蕭積遠 李雅俐.
10303: How Many Trees? ★★☆☆☆ 題組:Contest Archive with Online Judge
快取映射 之直接對映 計算整理.
第三章 比與比例式 3-1 比例式 3-2 連比例 3-3 正比與反比.
Presentation transcript:

SPOTLIGHT 數字系統與編碼系統 1

相信大家都已經知道,電腦是透過0與1的位元 (bit) 來處理資 料的數位電子裝置。人類社會所使用的數字系統 (number system) ,或稱為數值系統,是早在文明還未進化的時代就已經 因為十根手指頭的關係而採用了十進制至今。 068 2

不同的數字系統:時間、重量、長度 因此以星期來看,可以算是七進制 ( 雖然沒有星期零 ) ,以天來 看,就是廿四進制,以小時和分鐘來看就是六十進制。 3

069 不同的數字系統:時間、重量、長度 資訊世界的數字系統:二進制、八進制、十六進制 為了要讓電腦環境裡的二進制數字,能方便習慣於十進制的人 們處理、記憶,因此數學界透過了八進制 (octal system) 和十六 進制 (hexadecimal system) 來表示電腦裡的各種數字。畢竟, 要讓一般人記住或閱讀由0與1組成的一長串資料,實在是相 當困難。 4

069 不同的數字系統:時間、重量、長度 資訊世界的數字系統:二進制、八進制、十六進制 ( 續 ) 因為二進制若以 3 個位元來算時,是 000 到 111 之間,在數量上 一共是 8 個,而若以 4 位元來算,就是 0000 到 1111 之間,為什 麼電腦裡的二進制系統要轉換成八進制或十六進制,而不挑七 或十三的其他進制來轉換呢?在數量上則是 16 個。因此,才會 以八進制和十六進制來處理。 5

069 不同的數字系統:時間、重量、長度 資訊世界的數字系統:二進制、八進制、十六進制 ( 續 ) 6

069 不同的數字系統:時間、重量、長度 進制轉換 雖然我們的日常生活裡不太會用到八進制與十六進制,但如果 在處理電腦的計算時,要將八進制或十六進制轉換成二進制, 一般在數學上都會先將數字轉換成十進制,不僅如此,若要將 二進制的數字轉換成八進制或十六進制,也是要先轉換成十進 制。十進制是人類最為熟悉的數字系統。另外,為了避免在標 示時搞不清楚所使用的是幾進制,要是想特別指明數字的進制 時,會以括號把該數字框住,並且在後方加上小字的數字,如 十進制的 365 則為: (365) 10 。 7

069 不同的數字系統:時間、重量、長度 進制轉換 ( 續 ) (1101) 2 的四個位數中,右邊算起的第一個位數,也就是所謂的 最小位數 (least significant digit, LSD ,或稱為最低位數或最小位 元 MSB) 就代表的 2 的 0 次方,也就是 1 ;第二的位數為 2 的 1 次 方,即是 2 ;第三個位數乃 2 的 2 次方,等於 4 ;最左邊那個位數 ,即所謂的最大位數 (most significant digit, MSD ,或稱為最高 位數或最大位元 MSB) 就是 2 的 3 次方,所以是 8 。例如數字 (1101) 2 是十進制中的 13 ,因為從左邊開始累積的數量為: (2 3 × 1) + (2 2 × 1) + (2 1 × 0) + (2 0 × 1) = = 13 。 8

070 不同的數字系統:時間、重量、長度 進制轉換 ( 續 ) (8 2 × 3) + (8 1 × 1) + (8 0 × 6) = = 206 。而十六進制的 (316) 16 就是十進制的: (16 2 × 3) + (16 1 × 1) + (16 0 × 6) = = 790 。 (101101) 2 = (2 5 × 1) + (2 4 × 0) + (2 3 × 1) + (2 2 × 1) + (2 1 × 0) + (2 0 × 1) = = 45 (524) 8 = (8 2 × 5) + (8 1 × 2) + (8 0 × 4) = = 340 (2BF) 16 = (16 2 × 2) + (16 1 × 11) + (16 0 × 15) = = 703 9

070 不同的數字系統:時間、重量、長度 進制轉換 ( 續 ) 10

071 不同的數字系統:時間、重量、長度 進制轉換 ( 續 ) 703 除以 16 得出 43 餘 15 , 因此最右邊的 LSD 位數是 15 ,也就是 F 剩下的 43 仍大於 16 ,所以還要再除,得出 2 餘 11 ,第二位數為 11 ,也就是B 因為 2 小於 16 ,故不須再除,就拿著當最左邊的 MSD 位數,因 此右起第三位數為 2 最後把這些得到的位數串起來,右起:F、B、2= (2BF) 16 11

071 不同的數字系統:時間、重量、長度 進制轉換 ( 續 ) 12

071 不同的數字系統:時間、重量、長度 進制轉換 ( 續 ) 340 除以 8 得出 42 餘 4 ,因此最右邊的 LSD 位數是4 剩下的 42 仍大於 8 ,所以還要再除,得出 5 餘 2 ,第二位數為2 因為 5 小於 8 ,故不須再除,就拿著當最左邊的位數,因此右起 第三位數 MSD 為5 最後把這些得到的位數串起來,右起:4、2、5= (524) 8 13

072 不同的數字系統:時間、重量、長度 進制轉換 ( 續 ) 14

071 不同的數字系統:時間、重量、長度 進制轉換 ( 續 ) 45 除以 2 得出 22 餘 1 , 因此最右邊的位數 LSD 是1 剩下的 22 仍大於 2 ,所以還要再除,得出 11 餘 0 ,右起第二位數 為0 剩下的 11 仍大於 2 ,所以還要再除,得出 5 餘 1 ,第三位數為1 剩下的 5 仍大於 2 ,所以還要再除,得出 2 餘 1 ,第四位數為1 剩下的 2 仍大於 2 ,所以還要再除,得出 1 餘 0 ,第五位數為0 右起第六位數為 1 ,因為 1 小於 2 ,故不須再除,就拿著當最左 邊的位數,因此右起第六位數 MSD 為1 最後把這些得到的位數串起來,右起:1、0、1、1、0、 1= (101101) 2 15

072 不同的數字系統:時間、重量、長度 進制轉換 ( 續 ) Windows 7 作業系統中所附的 「小算盤」裡,已經具備了二 進制、十進制、八進制、十六 進制之間的轉換功能。使用時 可以透過:「開始」 → 「所有 程式」 → 「附屬應用程式」 → 「小算盤」進入此程式後,將 工具列的「檢視」切換至「程 式設計師」模式即可。 16

072 不同的數字系統:時間、重量、長度 小數點 在學會了二進制、十進制、八進制、十六進制之間的轉換之後 ,接著要來談談數字系統裡的另一個話題:小數點 (radix point ,簡稱為 point) 。小數點常出現在需要精確表示的數字裡,並 且用來分隔整數 (whole number) 與小數 (fractional number) 。 除了十進制會用到小數點,二進制以及其他進制當然也會用到 。 在小數的部分,因為離小數點最近的位數是小數裡的最大位元 ,離小數點最遠的位數是小數裡的最小位元,所以,在轉換時 就會依據小數點算起,按照負次方的順序來類推。 17

073 不同的數字系統:時間、重量、長度 小數點 ( 續 ) (2 3 × 1) + (2 2 × 0) + (2 1 × 1) + (2 0 × 0) + (2 -1 × 1) + (2 -2 × 1) + (2 -3 × 0) + (2 -4 × 1) = 8 + 2 + 0.5 + 0.25 + = ( ) 10 另一方面,如果要將具有小數的十進制數字轉成二進制時,其 計算的方式也是要將整數與小數分開處理。 18

073 不同的數字系統:時間、重量、長度 小數點 ( 續 ) 53 除以 2 得出 26 餘 1 ,因此最右邊的位數是1 剩下的 26 仍大於 2 ,所以還要再除,得出 13 餘 0 ,右起第二位數 為 剩下的 13 仍大於 2 ,所以還要再除,得出 6 餘 1 ,第三位數為1 剩下的 6 仍大於 2 ,所以還要再除,得出 3 餘 0 ,第四位數為0 剩下的 3 仍大於 2 ,所以還要再除,得出 1 餘 1 ,第五位數為1 因為 1 小於 2 ,故不須再除,就拿著當最左邊的位數,因此右起 第六位數為1 最後把這些得到的位數串起來,右起:1、1、0、1、0、 1= (110101) 2 19

073 不同的數字系統:時間、重量、長度 小數點 ( 續 ) 20

074 不同的數字系統:時間、重量、長度 小數點 ( 續 ) 整數部分 (53) 10 : 53 除以 8 得出 6 餘 5 ,因此最右邊的 LSD 位數是5 因為 6 小於 8 ,故不須再除,就拿著當最左邊的位數,因此右起 第二位數 MSD 為6 最後把這些得到的位數串起來,右起:5、6= (65) 8 小數部分 (0.125) 10 : 小數 乘以 8 得到 1 ,取下第一個超過小數點的整數結果 ( 即 使是零也要取 ) ,拿來當最終目的數字的最大位數 (MSD) ,所以 是1;因為之後遇到剩下的小數部分,第一個數字已經為0, 所以完成整個運算。因此,取得的小數點後數字為:1= (0.1) 8 最後把整數和小數部分拼起來,原本的 (53.125) 10 就成為: (65) 8 + (0.1) 8 = (65.1) 8 21

074 不同的數字系統:時間、重量、長度 小數點 ( 續 ) 整數部分 (53) 10 : 53 除以 16 得出 3 餘 5 ,因此最右邊的 LSD 位數是5 因為 3 小於 16 ,故不須再除,就拿著當最左邊的位數,因此右 起第二位數 MSD 為3 最後把這些得到的位數串起來,右起:5、3= (35) 16 小數部分 (0.125) 10 : 小數 乘以 16 得到 1 ,取下第一個超過小數點的整數結果 ( 即 使是零也要取 ) ,拿來當最終目的數字的最大位數 (MSD) ,所以 是2;因為之後遇到剩下的小數部分,第一個數字已經為0, 所以完成整個運算。因此,取得的小數點後數字為:2= (0.2) 16 最後把整數和小數部分拼好,原本 (53.125) 10 變為: (35) 16 + (0.2) 16 = (35.2) 16 22

074 不同的數字系統:時間、重量、長度 正負數 正負數的使用,正數 (positive number) 的觀念很簡單,就是手 上有的東西。而在負數 (negative number) 方面,最早出現的場 合就是「賒欠」和「不足」。 對於數學中關於負數的概念,在運算時其實也有相減 (miuns) 的意思。 一般來說,要處理二進制正負數的方式有: (1) 最大位元表示法 ; (2) 1的補數表示法; (3) 2的補數表示法。 23

075 不同的數字系統:時間、重量、長度 正負數 ( 續 ) 在二進制中,會使用的補數有1的補數與2的補數兩種。1的 補數 (1‘s complement) 是指兩數的和為 1 ,則此兩數互為 1 的補 數,即 1 和 0 互為 1 的補數。 而2 的補數 (2‘s complement) 則是指將原數變成1 的補數之後 再加上 1 。 這中間最大的差別就在於,使用1的補數還是會+ 0 和- 0 的 情況,而2的補數則不會,所以2的補數是最在這些表示法中 ,最適合用來表示二進制正負數整數的方法。如果我們以一個 4 位元 (bit) 的二進制整數來說明的話,或許就能很容易地理解 了。 24

075 不同的數字系統:時間、重量、長度 正負數 ( 續 ) 25

075 編碼系統 既然電腦是透過二進制來處理所有的資料,因此人們需要用到 的各種文字 (letter) 、符號 (symbol) 、數字 (digit) 都要透過一套 放諸四海皆準的編碼系統 (coding system) 來規範,才能讓不同 電腦間的資料能互相流通。 26

075 編碼系統 ASCII 與 Unicode 電腦裡最常用到的字元符碼格式 (character coding format) : ASCII 、 EBCDIC 以及 Unicode ,這三種符碼格式相互轉換。 美國標準資訊交換碼 ASCII( 發音為 Ask-Ee)American Standard Code for Information Interchange ,使用了 7 位元也就是以 128 個不同的排列組合 (2 7 =128) ,來表達不同的字元。而 ASCII 碼 還有一個變形稱之為延伸 ASCII (extended ASCII) ,它使用了 八位元也就是以 128 再加上一個位元,總計 256 個狀態 (2 8 =256) 來表示。 27

076 編碼系統 BIG-5 與 CNS11643 而在各個非英語系的國家裡,為了要正確呈現其文字 ) ,就需要 發展出一套適合自身語言的文字內碼,甚至是連同樣使用羅馬 字為基礎的歐洲國家,也會使用像是 ISO8859 的編碼格式。在 臺灣以及部分華人地區通用的正體中文,最早就是以資策會在 1984 年聯合幾家廠商所推出的 BIG-5( 大五碼 ) 來編排,以適用 於當年的中文電腦軟體。 28

076 編碼系統 BIG-5 與 CNS11643 ( 續 ) 29

077 編碼系統 ISO 與 Unicode 雖然被稱為統一碼或萬國碼的 Unicode 允許了各國語言文字的 編碼空間,但在此之前,國際間其實已經有了一些具有規模的 國際編碼,最知名的就是出自於國際標準化組織。 這個早在 1984 年就已經問世的編碼標準,在推出之後被命名為 通用符碼字元集 (Universal Coded Character Set, UCS) 。 儘管有了這些萬國語言編碼的制定,而且當今許許多多的網路 服務都可以透過瀏覽器軟體來進行,但我們也要知道如果語言 編碼的選擇不當,將可能導致畫面出現亂碼 30

078 編碼系統 ISO 與 Unicode ( 續 ) 31

078 編碼系統 ISO 與 Unicode ( 續 ) 32

078 編碼系統 ISO 與 Unicode ( 續 ) 33