一、進位的表示與轉換
二、機器碼
電腦對資料進行運算操作時,把符號位和數值位一起編碼來表示相應的數的各種方法有原碼、補碼、反碼、移碼等,下面的表格對此進行了總結。
二、瞭解校正碼
由於各種原因常常導致電腦在處理資訊過程中出現錯誤,為了避免這種錯誤,在每個字上添加一些校正位,用於確定字中出現錯誤的位置。有以下方式:
1、檢錯碼
①偶校正編碼和奇數同位編碼
檢測到一位出錯,不能定位。
例子:
假定最低一位為校正位,其餘高8位為資料位元,列表如下,從中看出,校正位的值取0,還是1,是由資料位元中1的個數決定的。
2、錯誤修正碼
①模二四則運算
模二加法:按位加,不考慮進位:0+0=0,0+1=1,1+0=1,1+1=0,如:
模二減法:按位減,不考慮借位;0-0=0,0-1=1,1-0=1,1-1=0,如:
模二減法和模二加法的結果相同,可以用模二加法代替模二減法。
模二乘法:按摸2加求部分積之和,不考慮進位;如:
模二除法:
②迴圈校正碼
迴圈碼就是一種基於模二運算建立編碼規則的校正碼,它可以通過模二運算來建立有效資訊和校正位之間的約定關係,即要求:
用一個多項式G(x)去除,一般情況下得到一個商Q(x)和餘數R(x):
M(x)=Q(x)×G(x)+R(x)
M(x)-R(x)=Q(x)×G(x)
將M(x)減去餘數R(x)就必定能為G(x)所除盡。因而可以設想讓M(x)-R(x)作為編好的校正碼送往目標組件,當從目標不見取得校正碼時,仍用約定的多項式G(x)去除,若餘數為0,表明該校正碼正確;若餘數不為0,表明有錯,再進一步的由余數值確定出哪一位出錯,從而加以糾正。
如:對四位有效資訊1010做迴圈校正編碼,選擇的產生多項式G(x)=1011.
Ⅰ.令M(x)=1010,將M(x)左移r位,以便拼裝r位餘數。因為G(x)=1011有四位,所以r=3.(除數為4位,餘數最多3位)。
M(x)×x3=1010000
Ⅱ.用產生的多項式G(x)對M(x)×x3作模2除:
Ⅲ.將左移r=3位後的待編有效資訊與餘數R(x)作模2加,即形成迴圈校正碼:
M(x)×x3+R(x)=1010000+011=1010011
③海明校正碼
海明校正碼是一種多重的同位碼,它將資訊用邏輯形式編碼,以便能夠檢錯和錯誤修正。用在海明碼中的全部傳輸碼字是由原來的心資訊和附加的同位位元組成的。每一個這種奇偶位被編在傳輸碼字的特定位置上。在合適的時候時,無論是在錯誤的數位是原有資訊位,還是附加校正位中的,這個系統都能把它分離出來。
步驟如下:
看到一篇部落格,覺得講的還不錯,先貼在這裡。http://blog.csdn.net/tms_li/article/details/6258788