校驗碼之奇偶校驗碼

2021-08-04 08:42:41 字數 934 閱讀 6358

校驗碼之奇偶校驗碼

在計算機系統中各部件需要進行資料交換,為了確保資料在傳送過程中正確無誤,我們需要使用校驗碼來測試資料是否出錯。

校驗的基本思想:將編碼分為合法編碼和錯誤編碼。合理的設計編碼規則使資料在傳送過程中出現某種錯誤就會變成錯誤編碼。

碼距:是指乙個編碼系統中任意兩個合法編碼之間至少有多少個二進位制位不同。

例如4位8421就是碼距為1

有人會問為什麼4位8421碼的碼距為1呢?我們仔細讀碼距的概念就會理解之中的原因。

我看過乙個例子拿來借用:

8421中,0001是合法的,從0001改變一位變成0000也是合法的,所以碼距是1,就是說如果傳輸過程中,資訊改變了一位,仍然是合法的,就很難檢測出錯誤;但如果用00代表0,11代表1,如果還是原來的從00 00 00 11改變一位,收到的訊號變成00 00 00 10就是不合法,就可以把錯誤訊號退回去重發,而如果想要合法就要變成00 00 00 00,也就是至少改變2位才能合法,碼距就是2.所以擴大碼距方便檢測。

奇偶校驗包含奇校驗和偶校驗兩種校驗。奇校驗(odd parity)是這樣一種校驗:它所約定的編碼規律是,讓整個校驗碼(包含有效資訊和校驗位)中「1」的個數為奇數。而偶校驗(even parity)約定的編碼規律是,讓整個校驗碼中「1」的個數為偶數。有效資訊(被校驗的資訊)部分可能是奇性(「1」的個數為奇數)的,也可能是偶性的,所以奇、偶兩種校驗都只需配乙個校驗碼,就可以使整個校驗碼滿足指定的奇偶性要求。這個校驗位取「0」還是「1」的原則是:若是奇校驗,則連同校驗位在內編碼裡含「1」的個數共有奇數個;若是偶校驗,則連同校驗位在內編碼裡含「1」的個數是偶數個。

【例】有效資訊為10001101,分別求奇校驗編碼和偶校驗編碼

【解】有效資訊中有4個「1」,所以奇校驗的校驗位去「1」才能使「1」的總數為奇數個;偶校驗的校驗位去「0」才能使「1」的總數為偶數個。所以,奇校驗編碼為110001101;偶校驗編碼為010001101

校驗碼 奇偶校驗碼

1.奇偶校驗碼 通過在編碼中增加一位校驗位來使編碼中1的個數為奇數或者偶數,校驗位可以在原編碼的前面或者後面加。通過加入校驗位後的1個數是奇數還是偶數,可分為兩種 奇校驗 1的個數為奇數 偶校驗 1的個數為偶數 下圖為奇校驗和偶校驗的設定方法。例如 m的ascii碼77,二進位制表示為0100110...

常用校驗碼(奇偶校驗碼 海明校驗碼 CRC校驗碼)

一 奇偶校驗碼 二 海明校驗碼 三 crc校驗碼 計算機系統執行時,各個部之間要進行資料交換.交換的過程中,會有發生誤碼的可能 即0變成1或1變成0 由於計算機的儲存是通過二進位制 來實現的的,誤碼會導致儲存的內容發生改變。為確保資料在傳送過程正確無誤,常使用檢驗碼.我們常使用的檢驗碼有三種.分別是...

2 1 4奇偶校驗碼

1.1 校驗原理 在資訊b傳輸過程中,01變成了00,另一台機器收到之後,並不能識別是否錯誤,這時候增加乙個bit用於識別資料是否有誤。由若干個 組成的乙個字叫碼字 將兩個碼字逐位進行對比,具有不同位的個數稱為兩個碼字間的距離 比如00 和 01 有乙個不一樣,碼字距離就為1,100和010 兩個不...