㈠ 如何計算身份證號碼的校驗碼
如何計算身份證號碼的校驗碼
身份證第18位(校驗碼)如何計算
大家可能很少會計算身份證第18位的校驗碼的吧?就讓大家了解了解以備不時之需吧!
方法
1.將前面的身份證號碼17位數分別乘以不同的系數。從第一位到第十七位的系數分別為:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。然後將這17位數字和系數相乘的結果相加
2.用加出來的和除以11,看余數是多少,余數只可能有0-1-2-3-4-5-6-7-8-9-10這11個數字。其分別對應的最後一位身份證的號碼為1-0-X
-9-8-7-6-5-4-3-2。
3.通過上面得知如果余數是3,就會在身份證的第18位數字上出現的是9。如果對應的數字是10,身份證的最後一位號碼就是羅馬數字x。大概的方法就是這樣了。
㈡ 專利號校驗碼的計算方法
專利號校驗碼的計算方法是的:
從第1位到第12位數字依次以下列變數代表:X4, X3, X2, X1, Y, Z7, Z6, Z5 ,Z4 ,Z3 ,Z2 ,Z1。
校驗位的計算公式為:
(X4*2+X3*3+X2*4+X1*5+Y*6+Z7*7+Z6*8+Z5*9+Z4*2+Z3*3+Z2*4+Z1*5)MOD(11)
余數為幾,校驗位就為幾,如果余數為10,則對應的為校驗位為X。
比如
200710308494.X
(2*2+0*3+0*4+7*5+1*6+0*7+3*8+0*9+8*2+4*3+9*4+4*5)MOD(11)=10,所以校驗位就是X
㈢ crc校驗碼計算方法是什麼
已知信息位為1100,生成多項式G(x) = x3+x+1,求CRC碼。
M(x) = 1100 M(x)*x3 = 1100000 G(x) = 1011
M(x)*x3 / G(x) = 1110 + 010 /1011 R(x) = 010
CRC碼為: M(x)*x 3+R(x)=1100000+010 =1100010
其原理是:CRC碼一般在k位信息位之後拼接r位校驗位生成。編碼步驟如下:
(1)將待編碼的k位信息表示成多項式 M(x)。
(2)將 M(x)左移 r 位,得到 M(x)*xr 。
(3)用r+1位的生成多項式G(x)去除M(x)*xr 得到余數R(x)。
(4)將M(x)*xr 與R(x)作模2加,得到CRC碼。
(3)校驗碼的計算方法擴展閱讀:
CRC校驗碼計算詳解:採用CRC進行差錯檢驗,生成多項式為G(X)=X4+X+1,信息碼字為10110,則計算出的CRC校驗碼是:A. 0000 B. 0100 C. 0010 D.1111
符號表示假定:多項式和多項式的系數排列均用相同的符號表示,如
G(X)= X4+X+1
G(X)=10011
已知條件如下:
原碼字記做M(X),即:M(X) = 10110
生成多項式記做G(X),即:G(X) = 10011
G(X)的最高階數記做r,此處r = 4
㈣ 求校驗碼演算法
提供之資料看看對你有啥幫助
CRC(Cyclic Rendancy Check)循環冗餘校驗碼
是常用的校驗碼,在早期的通信中運用廣泛,因為早期的通信技術不夠可靠(不可靠性的來源是通信技術決定的,比如電磁波通信時受雷電等因素的影響),不可靠的通信就會帶來『確認信息』的困惑,書上提到紅軍和藍軍通信聯合進攻山下的敵軍的例子,第一天紅軍發了條信息要藍軍第二天一起進攻,藍軍收到之後,發一條確認信息,但是藍軍擔心的是『確認信息』如果也不可靠而沒有成功到達紅軍那裡,那自己不是很危險?於是紅軍再發一條『對確認的確認信息』,但同樣的問題還是不能解決,紅軍仍然不敢冒然行動。
對通信的可靠性檢查就需要『校驗』,校驗是從數據本身進行檢查,它依靠某種數學上約定的形式進行檢查,校驗的結果是可靠或不可靠,如果可靠就對數據進行處理,如果不可靠,就丟棄重發或者進行修復。
CRC碼是由兩部分組成,前部分是信息碼,就是需要校驗的信息,後部分是校驗碼,如果CRC碼共長n個bit,信息碼長k個bit,就稱為(n,k)碼。 它的編碼規則是:
1、首先將原信息碼(kbit)左移r位(k+r=n)
2、運用一個生成多項式g(x)(也可看成二進制數)用模2除上面的式子,得到的余數就是校驗碼。
非常簡單,要說明的:模2除就是在除的過程中用模2加,模2加實際上就是我們熟悉的異或運算,就是加法不考慮進位,公式是:
0+0=1+1=0,1+0=0+1=1
即『異』則真,『非異』則假。
由此得到定理:a+b+b=a 也就是『模2減』和『模2加』直值表完全相同。
有了加減法就可以用來定義模2除法,於是就可以用生成多項式g(x)生成CRC校驗碼。
例如: g(x)=x4+x3+x2+1,(7,3)碼,信息碼110產生的CRC碼就是:
101
11101 | 110,0000
111 01
1 0100
1 1101
1001
余數是1001,所以CRC碼是110,1001
標準的CRC碼是,CRC-CCITT和CRC-16,它們的生成多項式是:
CRC-CCITT=x16+x12+x5+1
CRC-16=x16+x15+x2+1
㈤ 校驗碼的演算法舉例
按照中華人民共和國國家標准GB11643-1999規定中華人民共和國公民身份號碼校驗碼的計算方法即為ISO 7064:1983.MOD 11-2校驗碼計演算法。
假設某一17位數字是 17位數字 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 加權因子 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 368
計算17位數字各位數字與對應的加權因子的乘積的和S:1×7+2×9+3×10+4×5+5×8+6×4+7×2+8×1+9×6+0×3+1×7+2×9+3×10+4×5+5×8+6×4+7×2=368; 計算S÷11的余數T:368 mod 11=5; 計算(12-T)÷11的余數R,如果R=10,校驗碼為字母「X」;如果R≠10,校驗碼為數字「R」:(12-5)mod 11=7。 該17位數字的校驗碼就是7,聚合在一為123456789012345677。
加權因子公式為Wi=2^(n-1)(mod 11),n為數字序列從右到左的從1開始的順序數。
序
ai 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 ?Wi 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 1 全國組織機構代碼由八位數字(或大寫拉丁字母)本體代碼和一位數字(或大寫拉丁字母)校驗碼組成。校驗碼按下列公式計算: 8 C9=11-MOD(∑Ci×Wi,11) i=1 MOD-表示求余函數;i-表示代碼字元從左至右位置序號;
Ci-表示第i位置上的代碼字元的值,採用下列「代碼字元集」所列字元;
C9-表示校驗碼;
Wi-表示第i位置上的加權因子,其數值如下表:
加權因子 i 1 2 3 4 5 6 7 8 Wi 3 7 9 10 5 8 4 2 當MOD函數值為1(即C9=10)時,校驗碼應用大寫拉丁字母「X」表示;當MOD函數值為0(即C9=11)時,校驗碼仍用「0」表示;當C9的值為1至9時,校驗碼直接用C9的值表示。
㈥ 校驗碼的校驗碼演算法
不同的校驗碼的演算法常常不同。常見的校驗碼演算法有:碼距、奇偶檢驗、海明校驗、循環冗餘校驗等
㈦ 標准書號的校驗位如何計算
出版社的ISBN號好像都加了前綴978,而且校驗碼的計算方法也有所變化。
ISBN的構成
ISBN號碼由10位數字組成,並以三條線段加以分割,每組數字都有不同的含義。
第一組:區位代碼0+1:英文 、2:法文 、3:德文 、4:日文、 5:俄文、 7:中文。
第二組:出版社代碼
由各國的ISBN碼分配中心,分給各個出版社。
第三組:書序碼
該出版物代碼,由出版社具體給出。
第四組:計算機校驗碼
只有一位,從0到10,10由X代替。
校驗碼的計算方法
假設某ISBN號碼前9位是:7-309-04547;
計算加權和S:S=7×10+3×9+0×8+9×7+0×6+4×5+5×4+4×3+7×2 = 226;
計算S÷11的余數M:M = 226 /11餘6
計算11-M的差N:N = 11 �6�1 6 = 5
如果N=10,校驗碼是字母「X」;
如果N=1,校驗碼是數字「0」;
如果N為其他數字,校驗碼是數字N。
所以,本書的校驗碼是5。
㈧ 奇校驗碼的運算方法是什麼
奇校驗碼的運算方法是:
發送端只需要對所有消息 位進行異或運算, 得出的值如果是 0, 則校驗碼為 1, 否則為 0。 接收端可以對消息進行相同計 算, 然後比較校驗碼。 也可以對消息連同校驗碼一起計算, 若值是 0 則有差錯,否則校驗通過。
它們都是發送端對消息按照某種演算法計算出校驗碼, 然後將校驗碼和消息一起發送到接收端。 接收端對接收到的消息按 照相同演算法得出校驗碼, 再與接收到的校驗碼比較, 以判斷接收到消息是否正確。 奇偶校驗只需要 1 位校驗碼, 其計算方法也很簡單。
通常說奇偶校驗可以檢測出 1 位差錯, 實際上它可以檢測出任何奇數位差錯。 校驗和的思想也很簡單, 將傳輸的消息當成 8 位(或 16/32 位)整數的序列, 將這些整數加起來 而得出校驗碼, 該校驗碼也叫 校驗和。 校驗和被用在 IP 協議中, 按照 16 位整數運算, 而且其 MSB(Most Significant Bit)的進位被加到結果中。
㈨ CRC碼的計算方法
給信息碼補5個0,然後去除多項式,余數就是較驗碼
㈩ 身份證號最後一位數字稱之為校驗碼,校驗碼的計算方式是怎樣的
按照相關規定,身份號是由17個數字和1個數字校驗碼組成的。而最後一位校驗碼,就是檢查身份證是否正確的主要依據。它的計算方法,主要是由前17位乘以不同的系數,最後的總和除以11。在這種情況下,得到的余數,就是校驗碼。
那麼我們在反推的時候,就可以用身份證號乘於系數,當最後得出的余數和末尾校驗碼不同時,就代表這個身份證,是一個假的身份證,不符合我們國家的標准。另外,余數對應的數字不同,並不是說余數就一定是最後一位身份證號碼。
3、為什麼除以11看到整個計算過程,我們會發現,想要得出校驗碼,並非一件易事。不過在計算中,有人可能會提出疑問,最終的除以為什麼是取11,而不是其他數字。
其實這個問題的答案很簡單,結合校驗碼的功能,11是最容易檢測出問題的存在。同時,它可以覆蓋到大多數身份證,方便進行校驗。畢竟一個國家人口眾多,校驗碼要做到盡可能覆蓋所有人。