數電(1):數制和碼制


一、進制互轉

1、二進制和十進制互轉

(1)二 - 十:2的n次方

 (2)十 - 二(整數):除2取余,從下到上。

 (3)十 - 二(小數):乘2取整,從上到下。

2、二進制和十六進制互轉

(1)二 - 十六:4個1位

(2)十六 - 二:1位4個

3、二進制和八進制互轉

(1)二 - 八:3個1位

(2)八 - 二:1個3位

 

二、原碼反碼補碼

1、概念

  • 原碼:新增最高位為符號位,0正1負,其余位不變。
  • 反碼:符號位不變,其余位為原碼取反。
  • 補碼:符號位不變,其余位為反碼加一。 

2、有符號數加減運算

  • (1)先擴位,結果位 = max(a,b)+ 1;
  • (2)符號位寫兩遍,數字為變補碼;
  • (3)結果值超過的進位舍去;

 3、有符號數乘除法運算

  • (1)先擴位,結果位 = a + b + 1;
  • (2)符號位相與放到最高位;
  • (3)數字位進行乘除運算;
a[3:0] + b[3:0] = {a[3] & b[3], a[2:0] * b[2:0]} = c[6:0](位數為3+3+1=7)

 

三、常見編碼

1、十進制代碼

2、格雷碼(循環碼)

什么是格雷碼?

  在一組數的編碼中,若任意兩個相鄰的代碼只有一位二進制數不同,則稱這種編碼為格雷碼(Gray Code),另外由於最大數與最小數之間也僅一位數不同,即“首尾相連”,因此又稱循環碼反射碼。格雷碼(Gray Code)又稱Grey Code、葛萊碼、格萊碼、戈萊碼、循環碼、反射二進制碼、最小差錯碼等。

 

為什么要使用格雷碼?

  格雷碼是一種具有反射特性和循環特性的單步自補碼,其循環和單步特性消除了隨機取數時出現重大錯誤的可能,其反射和自補特性使得對其進行求反操作也非常方便。格雷碼屬於一種可靠性編碼,它在相鄰間轉換時,只有一位產生變化,它大大減少了一個狀態到另一個狀態時邏輯的混淆,因此格雷碼在通信和測量技術中得到廣泛應用。

 

格雷碼有哪些特點?

(1)格雷碼具有反射特性;

(2)格雷碼具有循環特性;

(3)格雷碼是一種准權碼;

(4)格雷碼相鄰的碼組間僅有一位不同;

(5)格雷碼從編碼形式上杜絕了邏輯冒險的發生;

(6)卡諾圖是按格雷碼來畫的;

(7)格雷碼不是一種二進制;(易錯)

 

格雷碼和獨熱碼的區別

  獨熱編碼占用較多的位,也就是消耗較多的觸發器,但這些額外觸發器占用的面積可與譯碼電路省下來的面積相抵消。

 

二進制轉格雷碼

  Gray = (bin>>1) ^ bin;(右移一位后和自身異或)

 

3、ASCII碼

4、獨熱碼

下次再寫

 

參考資料:閻石. 數字電子技術基礎(第5版)[M]. 高等教育出版社, 2006.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM