身份证号码编码

[转自:身份证号码编码 教学设计]

身份证为18位,老的身份证是15位就不说了。

关于身份证第18是怎么计算的,原理如下:根据〖中华人民共和国国家标准GB11643-1999〗中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。

见后面附的“最新县及县以上行政区划代码”,这里老的和新的可能有些出入.详见:

身份证号码(18位)格式为:AAAAAABBBBBBCCCD

A、地址码(前六位数)

表示编码对象常住户口所在县(市、旗、区)的行政区划代码,按GB/T2260的规定执行。

B、出生日期码(第七位至十四位)

表示编码对象出生的年、月、日,按GB/T7408的规定执行,年、月、日代码之间不用分隔符。

C、顺序码(第十五位至十七位)

表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性。

D、校验码(第十八位数)

作为尾号的校验码,是由号码编制单位按统一的公式计算出来的,如果某人的尾号是0-9,都不会出现X,但如果尾号是10,那么就得用X来代替,因为如果用10做尾号,那么

此人的身份证就变成了19位。X是罗马数字的10,用X来代替10,可以保证公民的身份证符合国家标准.

第十八位数字的计算方法为:

1.将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7910584216379105842

2.将这17位数字和系数相乘的结果相加。

3.用加出来和除以11,看余数是多少?

4余数只可能有012345678910这11个数字。其分别对应的最后一位身份证的号码为10X98765432。

5.通过上面得知如果余数是2,就会在身份证的第18位数字上出现罗马数字的Ⅹ。如果余数是10,身份证的最后一位号码就是2。

原文地址:https://www.cnblogs.com/ceachy/p/2523701.html