PowerPoint

課本PowerPoint

課本詳盡解釋

備注

  • 這個章節大概說的是進制轉換
  • 有提及數位的表示(利用$\sum$表示)P.15
  • 以及2進制的加、減、乘、除 P19-P.23
  • 有介紹BCD編碼法 P43
  • BCD詳盡解說
  • 最後提及Unicode

BCD

可以參考Wikipedia

簡單來說就是將十進位數利用二進位方式表示儲存

而根據Wikipedia(中文版)

這種編碼技術,最常用於會計系統的設計裡,因為會計制度經常需要對很長的數字做準確的計算。相對於一般的浮點式記數法,採用BCD碼,既可儲存數值的精確度,又可使電腦免除作浮點運算所耗費的時間。此外,對於其他需要高精確度的計算,BCD編碼亦很常用。

BCD碼的主要優點是在機器格式與人可讀的格式之間轉換容易,以及十進位數值的高精度表示。BCD碼的主要缺點是增加了實現算術運算的電路的複雜度,以及儲存效率低。

可見BCD有以上優點,故為人們所使用

編碼方式

常用BCD編碼方式

常用BCD編碼方式

對應不同需求,各人亦開發了不同的編碼方法,以適應不同的需求。這些編碼,大致可以分成*有權碼*和*無權碼*兩種:

  1. 有權碼,如:8421(最常用)、2421、5421
  2. 無權碼,如:餘3碼、格雷碼

當中的有權無權指的是:

有權碼:

如普通的十進制數字${(31)}_{10}$可以將他展開為$3\times10^1+1\times10^0$

而當中的$10^1$及$10^0$就為這個十進制數字的權值

無權碼:

有了有權的定義,那麼無權碼就很容易理解

Gray Code,Gray Code是人們自行定義,而且Gray Code每一位都沒有權值,所以這是無權碼


8421碼

而當中的8421碼又稱為BCD碼,是最常用的編碼。

個人理解就是

將一個十進制數字轉為二進制然後直接把他當作字串直接記錄下來

而課文中也有詳盡解說 P45

Warning: Conversion or Coding?

Do NOT mix up conversion of a decimal number to a binary number with coding a decimal number with a BINARY CODE.

${13}_{10} ={1101}_2$(This is conversion)

$13 \Longrightarrow 0001|0011$ (This is coding)


Gary Code

而Gary Code本身發明是為了避免利用PCM傳送訊號發生出錯而發明。

而Gary Code的特點是兩個相鄰間的數(在二進制下)只有一個位元會發生變化

如Gary Code中十進制的 $2_{10}$ 表示為 ${011}$

而 $3_{10}$則表示為${010}$

十進位 Gary Code 二進位
0 000 000
1 001 001
2 011 010
3 010 011
4 110 100
5 111 101
6 101 110
7 100 111