1 / 31

請老師填入姓名主講

計算機概論. 請老師填入姓名主講. 課本:數位傳真 2012. 博碩文化出版發行. 第三章 數字系統與資料表示法. 課前指引 也許您也早已聽過,電腦實際處理的資料,其實只有0 與1這兩種資料。對電腦來說,所有東西都是一個數字(0 或1 所組成)。字母、字串和標點符號是數字,聲音和圖片是數字,甚至電腦本身的指令也是數字。. 章節大綱. 3-1 資料表示法. 3-2 數值資料表示法. 3-3 電腦與數字系統. 3-4 數字系統的轉換. 備註:可依進度點選小節. 3-1 資料表示法. 淺談資料處理 (1)

Download Presentation

請老師填入姓名主講

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 計算機概論 請老師填入姓名主講 課本:數位傳真2012 博碩文化出版發行

  2. 第三章 數字系統與資料表示法 課前指引 也許您也早已聽過,電腦實際處理的資料,其實只有0 與1這兩種資料。對電腦來說,所有東西都是一個數字(0 或1 所組成)。字母、字串和標點符號是數字,聲音和圖片是數字,甚至電腦本身的指令也是數字。

  3. 章節大綱 3-1 資料表示法 3-2 數值資料表示法 3-3 電腦與數字系統 3-4 數字系統的轉換 備註:可依進度點選小節

  4. 3-1 資料表示法 • 淺談資料處理(1) • 電腦真正在處理資料時,並不是以位元為單位而進行處理,而是以「位元組」(Byte)為基本的處理單位,一個位元組等於八個位元,所以可以代表28=256 個資料。 • 有了位元組,電腦可以表示256 個不同的符號或字元的其中一種。例如一般英文字母,數字或標點符號(如+、–、A、B、%)都可由一個位元組來表示。 • 當各位讀者在操作電腦時,只要按下鍵盤上的鍵,即可立刻顯示代表的字母與符號。

  5. 淺談資料處理(2) • 不過對於電腦龐大的記憶體容量而言,位元組單位仍然太小,為了計量方便起見,定義了更大的儲存單位。例如:

  6. 編碼系統簡介(1) • ASCII 採用8 位元表示不同的字元,最左邊為核對位元,故實際上僅用到7 個位元表示。其中0 ∼ 9 表示阿拉伯數字,65 ∼ 90 表示大寫英文字母,97 ∼ 122 表示小寫英文字母,下表為部份ASCII 編碼與二進位、十進位表示法的對應: 續下頁

  7. 編碼系統簡介(2) • ASCII 在電腦系統中是相當重要的編碼系統,早期電腦與電腦之間的溝通與資料交換上面臨編碼不同的問題,例如早期的IBM 電腦上所使用的編碼系統是EBCDIC(Extended Binary Coded Decimal Interchange Code)編碼,稱為「擴展式BCD 碼」。 • 其原理乃採用8 個位元來表示不同之字元,因此EBCDIC 碼最多可表示256 個不同字元,比ASCII 碼多表示128 個字元。例如EBCDIC編碼的'A' 編碼11000001,'a' 編碼為10000001。EBCDIC 仍為IBM 公司主電腦和中型系統所使用,但是鮮少用在個人電腦上。

  8. 中文編碼(1) • 在中文編碼的發展上,中文電腦也許是因為早期倚天中文推銷之成功(即使是現在,仍可以在一些店家看到它的存在),使得Big-5 碼成為中文電腦的編碼依據,一般俗稱為「大五碼」,Big-5 碼一共有13000 多個元素,其中常用字為5401 個,不常用字為7652 個,符號為408 個,至於中國大陸盛行的簡體字標準內碼則為GB 碼。

  9. 中文編碼(2) • Big-5 碼的組成位元數較多,相對地字集中也包含了較多的字元,在Big-5 碼的字集中包含了5401 個常用字、7652 個次常用字,以及408 個符號字元,可以編出約一萬多個中文碼。 • 不過在大陸所使用的簡體中文,卻是GB 的編碼格式。因此如果這些文字內碼無法適當地進行轉換,那麼就會顯示成亂碼的模樣。

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

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

  12. 3-2 數值資料表示法 • 認識補數 • 1補數系統(1's Complement • 是指如果兩數之和為1,則此兩數互為1 的補數,亦即0 和1 互為1 的補數。也就是說,打算求得二進位數的補數,只需將0 變成1,1 變成0 即可;例如01010102的1 補數為101001012。 • 2補數系統(2's Complement) • 「2 補數系統」的作法則是必須事先計算出該數的1 補數,再加1 即可。

  13. 負數表示法(1) • 帶號大小值法 (Sign Magnitude) • 若用N 位元表示一個整數,最左邊一位元代表正負號,其餘N-1 位元表示該數值,則此數的變化範圍在 -2N-1-1~ +2N-1-1。如果是以8 個位元來表示一個整數,則最大的整數為(01111111)2=127,而最小的負數(11111111)2= -127。而0 的表示法有(0000000)2或(1000000) 2。

  14. 負數表示法(2) • 1's 補數法(1's Complement) • 最左邊的位元同樣是表示正負號,它的正數的表示法和帶號大小值法完全相同,當表示負數時,由0 變成1,而1 則變成0,並得到一個二進位字串。例如我們使用8 個位元來表示正負整數,那麼9=(00001001)2,則其「1's 補數」即為11110110。不過這種表示法對於0 的表示法還是有兩種,即+0=(00000000)2,-0=(11111111)2,運算成本最低。

  15. 負數表示法(3) • 2's 補數法(2's Complement) • 最左邊的位元還是符號表示位元,正數的表示法則與帶號大小值法相同,但負數的表示法是用1 補數法求得,並在最後一位元上加1。基本上,「2‘s 補數法」的做法就是把「1’s 補數法」加1 即可。例如9=(00001001) 2的「1‘s 補數」為(11110110) 2,其「2’s 補數」則為(11110111) 2。 • 由於使用「2's 補數法」的處理流程最為簡單,而且運算成本最低,至於末端進位,可直接捨去不需加1,並且0 的正負數表示法只有一種,這也是目前電腦所採用的表示法。

  16. 3-3 電腦與數字系統 • 數字系統簡介 • 從科學的角度來看,使用哪一種進位系統並沒有任何不同,人類最後使用十進位系統,大概與人類雙手共有10 根手指頭有關,十進位系統並不是到現在才普及,古代的各國家或民族早就在使用十進位系統,舉凡埃及、巴比倫、希臘、羅馬、印度、中國等等,雖然各國家民族所使用的符號不同,但計算法則都是相同的。 • 進位系統要看使用於何種場合,在電腦的世界中因為都在處理0 與1 兩種訊號,使用二進位系統來表示是最佳的選擇,您當然也可以使用十進位系統來表示,不過只是徒增困擾而已。

  17. 二進位系統(1) • 電腦內部所進行的數學運算為二進位系統,只有0 與1 兩個數字,每兩個數目就往前進一位,例如:

  18. 二進位系統(2) • 二進位的加法 • 在進行二進位的加法時,與十進位加法類似,每個位數上下對應相加,如果數目為二就往前進位,進位後與前一位相加結果數目如果為二,也是往前進一位,如下所示:

  19. 二進位系統(3) • 二進位轉十進位 • 二進位如果要轉換為十進位表示法,可參考十進位系統的做法,十進位系統若要表示219 這個數字,可以如下表示: • 同樣的,如果要將二進位表示為十進位,例如將11011011(十進位219)表示為十進位數字,則可以如下進行運算:

  20. 二進位系統(4) • 十進位轉二進位 • 要將十進位的數字轉為二進位的數字,則可以利用輾轉相除法求出每個指數的係數,我們可以先看看十進位數字是如何求出係數: • 依照同樣的方法,我們可以用二進位來表示一個十進位數字,如右所示:

  21. 八進位與十六進位系統(1) • 八進位系統 • 八進位系統其實與十進位系統相彷,只不過是以8 為基底,也就是只用到數字01234567 這八個數字,超過則往前進一位,要將八進位轉為十進位也很簡單,如八進位的333 就表示十進位的219,計算方式如下所示:

  22. 八進位與十六進位系統(2) • 十六進位系統 • 十六進位系統是以16 為進位的基底,除了使用十進位系統的0123456789 數字之外,還使用了ABCDEF 來表示十進位系統的10 ∼ 15 的數字,超過這16 個數字則往前進一位,所以十位進位的F4 就表示十進位的244,F 表示十進位的15,所以其計算方式如下所示:

  23. 3-4 數字系統的轉換 • 10進位轉成2、8、16進位(1) • 將12610換算成二進位

  24. 10進位轉成2、8、16進位(2) • 將12610換算成八進位 • 十進位轉換成十六進位,作法和上面兩種相同,如下所示:

  25. 2進位轉成8、16進位(1) • 如果要將二進位變換成十六進位,其方法與轉換規則如下: • (1)將二進位的數字,以小數點為基礎點,小數點左側的整數部份由右向左,每四位打一逗點,不足四位則請在其左側補足0;小數點右側的小數部份由左向右,每四位打一逗點,不足四位則請在其右側補足0。 • (2)將步驟1中的每四位二進數字,換成十六進位數字,即成十六進制。 續下頁

  26. 以範例來為各位說明。將100110101011.0101001換算成十六進位以範例來為各位說明。將100110101011.0101001換算成十六進位

  27. 進位轉成8、16進位(2) • 如果要將二進位變換成八進位,其方法與轉換規則如下: • (1)將二進位的數字,以小數點為基礎點,小數點左側的整數部份由右向左,每三位打一逗點,不足三位則請在其左側補足0;小數點右側的小數部份由左向右,每三位打一逗點,不足三位則請在其右側補足0。 • (2)將步驟1中的每三位二進數字,換成八進位數字,即成八進制。 續下頁

  28. 以範例示範說明。將100110101011.0101001換算成八進位以範例示範說明。將100110101011.0101001換算成八進位

  29. 8、16進位轉成2進位 • 如果要將八進位變換成二進位,其轉換規則是只要將每位八進位數字,換成三位二進位數字即可。同理要將十六進位變換成二進位,轉換規則是只要將每位十六進位數字,換成四位二進位數字即可。例如將73648換算成二進位,其結果為111 011 110 1002。

  30. Q&A討論時間 本章結束

More Related