精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

二進制轉格雷碼公式

PoisonApple ? 來源:網絡整理 ? 2018-03-02 14:47 ? 次閱讀

格雷碼

在一組數的編碼中,若任意兩個相鄰的代碼只有一位二進制數不同,則稱這種編碼為格雷碼(Gray Code),另外由于最大數與最小數之間也僅一位數不同,即“首尾相連”,因此又稱循環碼或反射碼。在數字系統中,常要求代碼按一定順序變化。例如,按自然數遞增計數,若采用8421碼,則數0111變到1000時四位均要變化,而在實際電路中,4位的變化不可能絕對同時發生,則計數中可能出現短暫的其它代碼(1100、1111等)。在特定情況下可能導致電路狀態錯誤或輸入錯誤。使用格雷碼可以避免這種錯誤。格雷碼有多種編碼形式。

格雷碼(Gray Code)曾用過Grey Code、葛萊碼、格萊碼、戈萊碼、循環碼、反射二進制碼、最小差錯碼等名字,它們有的不對,有的易與其它名稱混淆,建議不要再使用這些曾用名。

二進制

二進制是計算技術中廣泛采用的一種數制。二進制數據是用0和1兩個數碼來表示的數。它的基數為2,進位規則是“逢二進一”,借位規則是“借一當二”,由18世紀德國數理哲學大師萊布尼茲發現。當前的計算機系統使用的基本上是二進制系統,數據在計算機中主要是以補碼的形式存儲的。計算機中的二進制則是一個非常微小的開關,用“開”來表示1,“關”來表示0。

20世紀被稱作第三次科技革命的重要標志之一的計算機的發明與應用,因為數字計算機只能識別和處理由‘0’?!?’符號串組成的代碼。其運算模式正是二進制。19世紀愛爾蘭邏輯學家喬治布爾對邏輯命題的思考過程轉化為對符號“0‘’?!?‘’的某種代數演算,二進制是逢2進位的進位制。0、1是基本算符。因為它只使用0、1兩個數字符號,非常簡單方便,易于用電子方式實現。

二進制轉格雷碼公式

二進制轉格雷碼公式

十進制 586 = 二進制 1001001010 = 格雷碼 1101101111。

二進制碼 ----》 格雷碼(編碼):

從最右邊一位起,依次將每一位與左邊一位異或(XOR),作為對應格雷碼該位的值,最左邊一位不變(相當于左邊是0)。

格雷碼的是特點是:

相鄰兩數的格雷碼,僅僅有一位二進制發生變化。

而且在其范圍內的最小值和最大值,也僅僅有一位二進制發生變化。

例如下面兩數:

最?。憾M制0000=格雷碼0000

最大:二進制1111=格雷碼1000

看到了吧,0000 和 1000,僅僅有一位數發生變化。

-------

如果在變換的過程中,先把十進制轉換成BCD碼,這就失去了格雷碼的特點。

因為在BCD碼中:

最小:二進制0000=格雷碼0000

最大:二進制1001=格雷碼1101

可以看出,它們之間有三位發生變化。

通過BCD碼來變換格雷碼,思路不對。變換出來的,并不是原數的格雷碼。

自然二進制數轉換到格雷碼

------------

設有 N 位二進制數 B(i),其中 0 《= i 《= N - 1;它可以變換成為同樣位數的格雷碼 G(i)。

二進制數與格雷碼的轉換公式如下:

G(i) = B(i+1) XOR B(i) ; 0 《= i 《 N - 1

G(i) = B(i) ; i = N - 1

如果是通過編程計算進行變換,就需要使用這個公式逐位的計算;

如果是使用硬件電路進行變換,就可以使用做而論道前面在回答問題時給出的電路。

格雷碼轉換到自然二進制數

------------

設有 N 位格雷碼 G(i),把它轉換成自然二進制數的算法如下。

自然二進制碼的最高位等于雷碼的最高位;

自然二進制碼的次高位為最高位自然二進制碼與次高位格雷碼相異或;

自然二進制碼的其余各位與次高位自然二進制碼的求法相類似。

轉換公式如下:

B(i) = G(i) ; i = N - 1

B(i) = B(i+1) XOR G(i) ; 0 《= i 《 N - 1

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 二進制
    +關注

    關注

    2

    文章

    793

    瀏覽量

    41599
  • 格雷碼
    +關注

    關注

    2

    文章

    34

    瀏覽量

    13175
收藏 人收藏

    評論

    相關推薦

    什么是

    (Gray code),又叫循環二進制碼或反射二進制碼 在數字系統中只能識別0和1,各種數據要轉換為
    發表于 11-11 09:34 ?7296次閱讀
    什么是<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b>

    二進制與自然二進制碼的互換分析

    其中采用循環二進制編碼的絕對式編碼器,其輸出信號是一種數字排序,不是權重碼,每一位沒有確定的大小,不能直接進行比較大小和算術運算,也不能直接轉換成其他信號,要經過一次變換,變成自然二進制碼。
    的頭像 發表于 09-23 16:23 ?6795次閱讀

    二進制碼詳解

    的權為21=2,b2位的權為22=4,b3位的權為23=8,例: 0111= 0×8 + 1×4 + 1×2 + 1×1=7  一般情況下,十進制二進制碼之間的關系可表示為:(N)D= b3 W3 + b2 W2 + b1
    發表于 04-06 23:55

    二進制與自然二進制碼的互換

    。而絕對式編碼器是直接輸出數字量的傳感器,它是利用自然二進制或循環二進制)方式進行光電轉換的,編碼的設計一般是采用自然
    發表于 03-08 14:16

    簡介及格二進制的轉換程序

    . * ***************************************************************** *補充說明: *其它的轉換方法還有 * 1、查表法(建立一個二進制與格的對應表) *
    發表于 04-22 09:00

    二進制與格轉換

    二進制與格轉換
    發表于 08-08 15:51

    二進制與格轉換

    本帖最后由 eehome 于 2013-1-5 10:01 編輯 二進制與格轉換
    發表于 08-14 09:42

    簡介及格二進制的轉換程序

    簡介及格二進制的轉換程序
    發表于 01-16 11:52 ?5003次閱讀

    二進制編碼和二進制數據

    二進制編碼和二進制數據   二進制編碼是計算機內使用最多的制,它只使用兩個基本符號"0"和"1",并且通過由這兩個符號組成的
    發表于 10-13 16:22 ?4760次閱讀

    二進制方法

    二進位碼第n位 = 二進位碼第(n+1)位+第n位。因為二進位碼和
    發表于 11-11 09:38 ?7691次閱讀
    <b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b><b class='flag-5'>轉</b><b class='flag-5'>二進制</b>方法

    二進制的轉換

    ,又叫循環二進制碼或反射二進制碼
    的頭像 發表于 03-02 15:48 ?1.8w次閱讀
    <b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b>與<b class='flag-5'>二進制</b>的轉換

    FPGA學習系列:33. 二進制二進制的設計

    ]?bi;5? output?reg?[8:0]?bo;??//8位二進制輸出6? reg??[8:0]?g;7? 8? //二進制
    的頭像 發表于 08-28 16:16 ?3257次閱讀

    如何把二進制轉換為是如何判斷讀空寫滿呢?

    在傳遞讀寫時鐘域的指針使用來傳遞,如何把二進制轉換為
    的頭像 發表于 09-15 09:38 ?8285次閱讀
    如何把<b class='flag-5'>二進制</b>轉換為<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b>?<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b>是如何判斷讀空寫滿呢?

    轉換為二進制編碼器的方法

    絕對編碼器中的傳感器輸出格序列,需要一些復雜的轉換方法才能正確使用。本文展示了如何獲取絕對編碼器使用的并將其轉換為
    的頭像 發表于 05-05 15:41 ?6465次閱讀
    將<b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b>轉換為<b class='flag-5'>二進制</b>編碼器的方法

    二進制轉換

    是一種循環二進制編碼,特點是相鄰數變化時只有一位數據跳變。
    的頭像 發表于 01-17 11:15 ?5069次閱讀
    <b class='flag-5'>格</b><b class='flag-5'>雷</b><b class='flag-5'>碼</b>與<b class='flag-5'>二進制</b>轉換