1. 程式人生 > 實用技巧 >python的多種魔術方法

python的多種魔術方法

一、非數值資料的編碼方式
邏輯值:邏輯資料和數值資料都是一串0/1序列,形式沒有差異,邏輯資料通過邏輯運算指令處理,數值資料通過算術運算指令處理。
西文字元:字元不能直接在計算機內部進行處理,所以需要對其進行數字化編碼。
漢字字元:
1)漢字的輸入碼:漢字的輸入碼的碼元是西文鍵盤的某個按鍵。
2)字符集與漢字內碼:不能有二義性,即不能和ASCII碼有相同的編碼
資料的寬度和儲存

二.資料的寬度和儲存

1)資料儲存的寬度和單位

資料的寬度通常以位元組的(Byte)為基本單位表示
資料長度單位(如MB,GB,TB等)在表示資料容量和寬度等不同物件時所代表的大小不同
字用來表示被處理資訊的單位,用來度量各種資料型別的寬度。而字長表示進行資料運算、儲存和傳送的部件的寬度,它反應了計算機處理資訊的一種能力。字和字長的長度可以一樣,也可以不一樣。
字長通常是指CPU內部用於整數運算的資料通路的寬度,字長等於CPU內部用於整數運算的運算器位數和通用暫存器寬度。

2)2.6.2資料的儲存和排序順序
·資料的排列
大端方式以MSB所在的地址為資料地址,即給定地址存放處的是資料最高有效字方式;
小端方式以LSB所在的地址為資料地址,即給定地址存放處的是資料最低有效字方式;

三.資料校驗碼

除原資料資訊外,還增加若干位編碼,這些新增的程式碼稱為校驗位。
由若干位程式碼組成的一個字叫碼字,將兩個碼字逐位比較,具有不同程式碼的位的個數叫做這兩個碼字間的距離,也稱為海明距離。
一種碼制可能有若干個碼字,各碼字間的最小距離稱為碼距。

1.奇偶校驗碼

 奇校驗:在最高位新增0或1,使字編碼中的“1”的個數為奇數。
 偶校驗:在最高位新增0或1,使字編碼中的“1”的個數為偶數。

2.海明校驗碼

 假設為k個數據位設定r個校驗位,則校驗位能表示2^r個狀態,可用其中的一個狀態指出 "沒有發生錯誤",
 用其餘的2 ^r -1個狀態指出有錯誤發生在某一位,包括k個數據位和r個校驗位,因此校驗位的位數應滿足如下關係:
 2^r ≥ k + r + 1  ,即2^r-1 ≥ k + r 

3.迴圈冗餘校驗碼

一種具有較強檢錯、糾錯能力的校驗碼,常用於外儲存器的資料校驗,主要用於對大批量資料的儲存或傳輸校驗;
可檢測出所有奇數位錯;可檢測出所有雙位元的錯;可檢測出所有小於、等於校驗位長度的突發錯。