99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>通信技術(shù)>數(shù)據(jù)通信>

格雷碼運算研究

2010年03月18日 14:07 www.socialnewsupdate.com 作者:佚名 用戶評論(0
關(guān)鍵字:格雷碼(13026)

格雷碼運算研究

在數(shù)字系統(tǒng)中只能識別0和1,各種數(shù)據(jù)要轉(zhuǎn)換為二進制代碼才能進行處理,格雷碼是一種無權(quán)碼,采用絕對編碼方式,典型格雷碼是一種具有反射特性和循環(huán)特性的單步自補碼,它的循環(huán)、單步特性消除了隨機取數(shù)時出現(xiàn)重大誤差的可能,它的反射、自補特性使得求反非常方便。格雷碼屬于可靠性編碼,是一種錯誤最小化的編碼方式,因為,自然二進制碼可以直接由數(shù)/模轉(zhuǎn)換器轉(zhuǎn)換成模擬信號,但某些情況,例如從十進制的3轉(zhuǎn)換成4時二進制碼的每一位都要變,使數(shù)字電路產(chǎn)生很大的尖峰電流脈沖。而格雷碼則沒有這一缺點,它是一種數(shù)字排序系統(tǒng),其中的所有相鄰整數(shù)在它們的數(shù)字表示中只有一個數(shù)字不同。它在任意兩個相鄰的數(shù)之間轉(zhuǎn)換時,只有一個數(shù)位發(fā)生變化。它大大地減少了由一個狀態(tài)到下一個狀態(tài)時邏輯的混淆。另外由于最大數(shù)與最小數(shù)之間也僅一個數(shù)不同,故通常又叫格雷反射碼或循環(huán)碼。下表為幾種自然二進制碼與格雷碼的對照表:


一般的,普通二進制碼與格雷碼可以按以下方法互相轉(zhuǎn)換:
二進制碼->格雷碼(編碼):從最右邊一位起,依次將每一位與左邊一位異或(XOR),作為對應(yīng)格雷碼該位的值,最左邊一位不變(相當(dāng)于左邊是0);
格雷碼-〉二進制碼(解碼):從左邊第二位起,將每位與左邊一位解碼后的值異或,作為該位解碼后的值(最左邊一位依然不變).
數(shù)學(xué)(計算機)描述:
原碼:p[0~n];格雷碼:c[0~n](n∈N);編碼:c=G(p);解碼:p=F(c);書寫時從左向右標(biāo)號依次減小.
編碼:c=p?XOR?p[i+1](i∈N,0≤i≤n-1),c[n]=p[n];
解碼:p[n]=c[n],p=c?XOR?p[i+1](i∈N,0≤i≤n-1).

Gray?Code是由貝爾實驗室的Frank?Gray在20世紀(jì)40年代提出的(是1880年由法國工程師Jean-Maurice-Emlle?
Baudot發(fā)明的),用來在使用PCM(Pusle?Code?Modulation)方法傳送訊號時避免出錯,并于1953年3月17日取得美國專利。由定義可知,Gray?Code的編碼方式不是唯一的,這里討論的是最常用的一種。

[color=#FF0000]格雷碼是中國人的老祖先發(fā)現(xiàn)的[/color]
九連環(huán)與格雷碼?
分析解九連環(huán)的完全記法,由于每次只動一個環(huán),故兩步的表示也只有一個數(shù)字不同。下面以五個環(huán)為例分析。左邊起第一列的五位數(shù)是5個環(huán)的狀態(tài),依次由第一環(huán)到第五環(huán)。第二列是把這個表示反轉(zhuǎn)次序的五位數(shù),似乎是二進制數(shù),但是與第四列比較就可以看出這不是步數(shù)的二進制數(shù)表示。第三列是從初始狀態(tài)到這個狀態(tài)所用的步數(shù)。最右邊一列才是步數(shù)的二進制表示。?

00000-00000-0-00000?
10000-00001-1-00001?
11000-00011-2-00010?
01000-00010-3-00011?
01100-00110-4-00100?
11100-00111-5-00101?
10100-00101-6-00110?
00100-00100-7-00111?
00110-01100-8-01000?
10110-01101-9-01001?
11110-01111-10-01010?
01110-01110-11-01011?
01010-01010-12-01100?
11010-01011-13-01101?
10010-01001-14-01110?
00010-01000-15-01111?
00011-11000-16-10000?
10011-11001-17-10001?
11011-11011-18-10010?
01011-11010-19-10011?
01111-11110-20-10100?
11111-11111-21-10101?

我們發(fā)現(xiàn),右邊一列數(shù)恰好是十進制數(shù)0到21的二進制數(shù)的格雷碼!?這當(dāng)然需要21步。如果把5位二進制數(shù)依次寫完,就是?

10111-11101-22-10110?
00111-11100-23-10111?
00101-10100-24-11000?
10101-10101-25-11001?
11101-10111-26-11010?
01101-10110-27-11011?
01001-10010-28-11100?
11001-10011-29-11101?
10001-10001-30-11110?
00001-10000-31-11111?

這說明,對于只有5個環(huán)的五連環(huán),從初始到狀態(tài)11111用的不是并不是最多,到狀態(tài)00001才是最多,用31步。類似,對于九連環(huán),從初始到狀態(tài)111111111用的不是并不是最多,到狀態(tài)000000001才是最多,用511步。由于格雷碼111111111表示二進制數(shù)101010101,表示十進制數(shù)341,故從初始狀態(tài)到9個環(huán)全部上去用341步。?這就是九連環(huán)中蘊涵的數(shù)學(xué)內(nèi)涵。?

注?由二進制數(shù)轉(zhuǎn)換為格雷碼:從右到左檢查,如果某一數(shù)字左邊是0,該數(shù)字不變;如果是1,該數(shù)字改變(0變?yōu)?,1變?yōu)?)。例,二進制數(shù)11011的格雷碼是10110。?

由格雷碼表示變?yōu)槎M制數(shù):從右到左檢查,如果某一數(shù)字的左邊數(shù)字和是偶數(shù),該數(shù)字不變;如果是奇數(shù),該數(shù)字改變。?

例?格雷碼11011表示為二進制數(shù)是10010。?

以上可以用口訣幫助記憶:?2G一改零不改,G2奇變偶不變。?

這樣,我們不但可以知道從任何一個狀態(tài)到另一個狀態(tài)用完整解法需要多少步,用簡單解法又需要多少步,而且可以知道下一步的動作是什么。(除去兩個狀態(tài)000000000和111111111,任何狀態(tài)下都可以轉(zhuǎn)變?yōu)閮蓚€狀態(tài),即有兩個動作。)

例?設(shè)九連環(huán)的初始狀態(tài)是?110100110?,要求終止?fàn)顟B(tài)是?001001111?,簡單解法與完整解法各需要多少步?第一步是什么動作??

解?(1)初始狀態(tài)?110100110?,格雷碼是011001011,轉(zhuǎn)換為二進制數(shù)是010001101,相應(yīng)十進制數(shù)是141。終止?fàn)顟B(tài)是001001111,格雷碼是111100100,轉(zhuǎn)換為二進制數(shù)是101000111,相應(yīng)十進制數(shù)是327。二者差326-141=186,完整解法需要186步。?

(2)由于初始狀況141小于終止?fàn)顩r327,第一步應(yīng)成為142,相應(yīng)二進制是010001110,轉(zhuǎn)換為格雷碼是011001001,狀態(tài)是100100110,與原狀態(tài)比較,第一步應(yīng)上第2環(huán)。

(3)簡單解法步數(shù),我們由141,327分別求相應(yīng)的簡單步數(shù),?


對于N=141,得到N0=103;對于?N=327,N0=242。二者差139,故簡單步數(shù)139

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

( 發(fā)表人:admin )

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?