二進制轉換格雷碼的方法 格雷碼是循環(huán)碼嗎?
格雷碼是循環(huán)碼嗎?格雷碼:也稱循環(huán)碼,是二進制碼的一種異或運算變形,區(qū)別特征在于相鄰兩位服飾之間只有一位變化;此特點可以避免制造或安裝精度而帶來的非單值誤差,提高數(shù)據(jù)傳輸?shù)目煽啃院涂箶_性。格雷碼屬于可
格雷碼是循環(huán)碼嗎?
格雷碼:也稱循環(huán)碼,是二進制碼的一種異或運算變形,區(qū)別特征在于相鄰兩位服飾之間只有一位變化;此特點可以避免制造或安裝精度而帶來的非單值誤差,提高數(shù)據(jù)傳輸?shù)目煽啃院涂箶_性。
格雷碼屬于可靠性編碼,是一種錯誤最小化的編碼。
BCD碼是什么?
BCD碼實際上是在用二進制去和十進制的編碼做對應.3位二進制只能表示到8,4位表示到16會多出6個編碼,這給我們帶來了一些操作空間.
8421碼
在數(shù)值上和二進制碼11對應,是可以直接進行計算的
5421碼
數(shù)位權值為5,4,2,1.編碼的好處在于,最高位權值為5,將0~9一分為2,后面的5~9可以表示成0(1~4),好處跟算盤一致:直觀.
2421碼
數(shù)位權值為2,4,2,1.兩個數(shù)位都有2就會出問題,例如0101和1011都對應5.所以做了規(guī)定:0101~1010不許用.2421碼的好處是對9互補,需要了解一下二進制運算.簡單理解:為運算提供了方便.
余
涉及到進位的問題,十進制各位兩數(shù)相加,發(fā)生進位用8421碼計算若和小于16進位不會產生.于是想了個辦法把8421碼都加3就好了,這樣和就加上了6正好從十進制映射到umu讓進位正常發(fā)生.
格雷碼
格雷碼的核心思想是:相鄰兩數(shù)間只有一個位元改變.假設你家有個7擋冰箱,使用3個機械開關來控制風量.你在相鄰兩擋之間只需要撥動1次開關.如果是421編碼,你從3擋(011)撥到4擋(100)需要關兩個開一個,操作三次.格雷碼的設計可以做到步進的代價最小.
編碼器編碼規(guī)則?
1:十進制:人們生活中,我們的數(shù)字是09,逢十進一,這稱之為“十進制”數(shù)字編碼;
因10進制編碼需要用十個階梯的分布物理量,社會學實現(xiàn)較不方便,溫度傳感器中很少用此編碼。
2:純二進制:美式電子數(shù)字編碼,一般都以通斷(明暗)代表0,1,有多位數(shù)2的N次方構成編碼,最簡單的就是純二進制編碼cryin,變化的數(shù)字就是0和1,逢二進一,這稱為“純二進制”數(shù)字編碼,計算機電子應用中較多以此為編碼;
3:16進制碼:以二進制4位一組向十進制解碼0——15,但是10以上不以兩位數(shù)表示,而是以A——F表示,如10為A,15為F,這是16進制的編碼,便于數(shù)據(jù)寄存及辨識
4:BCD碼:十進制每一位分解解碼到二進制碼的4位一組十個數(shù),其BCD碼向十進制解碼后只有0-9,而無需再考慮十進制的進位問題,一般用于人眼習慣的7段服裝顯示管。
5:格雷碼:格雷碼是二進制編碼的一種,其特征是每一次遞增(或遞減)一個字變化,所有位數(shù)上只有其中一位發(fā)生了改變(0與1的變化),并且數(shù)據(jù)終點循環(huán)到起點同樣遵循這個原則,這樣在一個字的變化過程中,只有一位數(shù)發(fā)生跳變,數(shù)“能”變化量最小,出錯概率最低。特別適合于絕對值壓力傳感器的多碼道同步讀取或多位數(shù)同步輸出(并行輸出)中,也適合在通訊傳輸中;
6:格雷余碼:二進制編碼中大部分是2的冪次方編碼,編碼總數(shù)也是2的冪次方,如8位的256、10位的1024等,在濕度傳感器的角度計算中,在角度計算中無法整除取整,有時要用到角度的整數(shù),為此有格雷余碼,在格雷碼的服飾中去除一部分,余下一部分編碼使用,因此也稱為“余格雷碼”,例如180、360、720個編碼的“余格雷碼”。格雷余碼向十進制解碼后的十進制數(shù)不從0開始,需要“補碼