周岁 · 虚岁 · 属相 · 生日

身份证号码算年龄:提取生日、周岁、性别与星座

身份证第 7-14 位就是出生日期,周岁按生日口径、今天是 2026年10月30日,示例号 110101199003074231 算得 36 周岁、已活 13386 天。号码在浏览器本地解析,不上传、不保存;校验位不对的号码会直接报错,不给结果。

周岁(按生日)
36岁
1990年3月7日 · 简单年差 36
出生日期
1990-03-07
出生 · 第 7-14 位直接读出
已活天数
13386天
出生当天记第 0 天 · 约合 439 个月
下次生日
128天后
2027-03-07(星期日)

身份证算年龄计算器

示例号 110101199003074231 · 校验位自洽

隐私说明:解析只在你浏览器的本次会话里进行,没有网络请求,关闭页面即清空。上方默认展示的是编造的示例号。

性别
男
第 17 位为 3(奇男偶女)
星座
♓ 双鱼座
2 月 19 日 - 3 月 20 日 · 公历口径
出生省份
北京市
地址码前两位 11 · 省级口径
校验位
一致
算得 1 · 输入 1
号码分段内容解读
地址码(6 位) 110101 省级 北京市;第 3-6 位是市县区代码,区划多年间有调整,本页只解读省一级。
出生日期码(8 位) 19900307 1990年3月7日,公历年月日直接编码,这是身份证算年龄的依据。
顺序码(3 位) 423 同地区同日出生者按序编号,末位奇偶定性别:423 → 男。
校验码(1 位) 1 按加权模 11 算出为 1,与输入一致,号码自洽。

18 位号码四段划分见上方表格;15 位老证会按 19xx 补世纪位并给出 18 位升级结果。

18 位身份证号码结构:每一段是什么

按 GB 11643-1999《公民身份号码》,18 位号码是"地址码 + 出生日期码 + 顺序码 + 校验码"四段。算年龄只关心第二段,但知道全段结构才能看懂校验为什么能查错。下表是逐段说明,示例列取自 110101199003074231。

段位含义示例说明
第 1-2 位 省级行政区 11 省、自治区、直辖市、特别行政区的一级代码,共 34 个,见下方对照表。
第 3-4 位 地级行政区 01 市、州、盟的代码,随区划调整会变,同一省内不重号。
第 5-6 位 县级行政区 01 县、区、县级市代码;区划改革后新设的区县用新码,老号码保持原码不变。
第 7-14 位 出生日期 19900307 公历年(4 位)月(2 位)日(2 位),这是身份证算年龄的直接依据。
第 15-17 位 顺序码 423 同一地址码范围内同年同月同日出生者的编号,第 17 位奇数分给男性、偶数分给女性。
第 18 位 校验码 1 按 ISO 7064:1983 MOD 11-2 规则由前 17 位算出,取值 0-9 或 X;X 是罗马数字 10 的替位。

15 位老证与 18 位新证的差别

项目15 位老证18 位新证
总位数 15 位 18 位
出生日期 6 位(YYMMDD,缺世纪位) 8 位(YYYYMMDD)
校验码 没有 有(第 18 位,模 11 映射)
停发/启用 1984 年启用,1999 年停发 1999 年 10 月 1 日起换发
性别判定 第 15 位奇偶 第 17 位奇偶
升级规则 补 19 + 原号 + 校验码 —

15 位升 18 位只有一步补全:出生年前补"19",再补算校验码,原 12 位内容不变。手工升级报错多半出在校验码算错,下方流程表可逐步核对。

校验码算法:一步步算给你看

校验码由前 17 位算出,能发现抄错一位、相邻两位颠倒等大部分手误。两张小表是固定的权重与映射,流程表用示例号把每一步乘加写出来——查自家号码时对一遍就知道错在哪一位。

7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 217 位固定权重(第 1 位 → 第 17 位)
1 0 X 9 8 7 6 5 4 3 2模 11 余数 → 校验码(余 0 → 1 … 余 10 → 2)
步骤算式(数字×权重)逐位累计
第 1 位 1×7=7 7
第 2 位 1×9=9 16
第 3 位 0×10=0 16
第 4 位 1×5=5 21
第 5 位 0×8=0 21
第 6 位 1×4=4 25
第 7 位 1×2=2 27
第 8 位 9×1=9 36
第 9 位 9×6=54 90
第 10 位 0×3=0 90
第 11 位 0×7=0 90
第 12 位 3×9=27 117
第 13 位 0×10=0 117
第 14 位 7×5=35 152
第 15 位 4×8=32 184
第 16 位 2×4=8 192
第 17 位 3×2=6 198
求和取模 198 ÷ 11 = 18 余 0 余数 0 → 映射表第 0 位 → 校验码 1,与号码末位一致

映射表:余 0→1、余 1→0、余 2→X(即 10)、余 3→9、余 4→8、余 5→7、余 6→6、余 7→5、余 8→4、余 9→3、余 10→2。第 18 位出现 X 就是余 2,不是字母含义。

省级行政区代码对照表(前两位)

地址码前两位对应省级行政区,共 34 个。第 3-6 位是市县级代码,区划调整过多次,本页只解读省一级,市县段不做地名映射。

代码省级行政区代码省级行政区
11北京市43湖南省
12天津市44广东省
13河北省45广西壮族自治区
14山西省46海南省
15内蒙古自治区50重庆市
21辽宁省51四川省
22吉林省52贵州省
23黑龙江省53云南省
31上海市54西藏自治区
32江苏省61陕西省
33浙江省62甘肃省
34安徽省63青海省
35福建省64宁夏回族自治区
36江西省65新疆维吾尔自治区
37山东省71台湾省
41河南省81香港特别行政区
42湖北省82澳门特别行政区

11-15 华北、21-23 东北、31-37 华东、41-46 中南、50-54 西南、61-65 西北;71、81、82 为台湾省与港澳地区代码。区划撤销合并后老号码保持原码不变,所以偶有"已不存在的代码"出现。

从生日到星座:12 段边界与 2 月 29 口径

星座按公历日期直接划分,与年份无关,示例号 03 月 07 日落在双鱼座(2 月 19 日 - 3 月 20 日)。周岁遇到 2 月 29 日出生者按《民法典》第二百零二条处理:平年没有对应日,以 2 月 28 日为周年日。

星座起止查询生日落在该段即此星座
♈ 白羊座 3 月 21 日 4 月 19 日 Aries
♉ 金牛座 4 月 20 日 5 月 20 日 Taurus
♊ 双子座 5 月 21 日 6 月 21 日 Gemini
♋ 巨蟹座 6 月 22 日 7 月 22 日 Cancer
♌ 狮子座 7 月 23 日 8 月 22 日 Leo
♍ 处女座 8 月 23 日 9 月 22 日 Virgo
♎ 天秤座 9 月 23 日 10 月 23 日 Libra
♏ 天蝎座 10 月 24 日 11 月 22 日 Scorpio
♐ 射手座 11 月 23 日 12 月 21 日 Sagittarius
♑ 摩羯座 12 月 22 日 次年 1 月 19 日 Capricorn
♒ 水瓶座 1 月 20 日 2 月 18 日 Aquarius
♓ 双鱼座 2 月 19 日 3 月 20 日 Pisces · 示例号生日在 2 月 19 日 - 3 月 20 日,即双鱼座

占星学的岁差与"13 星座"说法不影响通行星座表:那是天文星座边界,占星星座按回归年十二等分,两者不必混谈。属相与星座不同,需要农历年分界,见属相年龄。

口径说明

周岁与简单年差为什么差 1

周岁是"过完第 N 个生日才满 N 岁",生日本身是分界;简单年差只做年份相减,不管生日过没过。生日已过的日子两者相等,没过则年差比周岁大 1——今天 2026年10月30日,示例号生日 03-07已过,所以周岁 36、年差 36,两数一致。

校验位能查错,但不能验真

模 11 校验能发现单字抄错、相邻两位颠倒这类常见手误,但它是公开算法,任何人都能算出自洽的号码——校验通过只说明"结构没抄错",不证明号码真实有效。涉及实名核验的场景要走官方渠道。

顺序码与"同日同地出生多少人"

第 15-17 位顺序码在同一个县级行政区、同一天出生的人里按序分配,奇数给男性、偶数给女性。理论上同一地区一天有 999 个名额(奇偶各半),超员时区划代码会细分;所以顺序码接近上限的号码往往能反推出生地相当小的范围,这也是为什么身份证号属于个人信息,本页不做任何"归属地精查"。

时区与"今天"

页面按北京时间(Asia/Shanghai,UTC+8)取当天日期,"已活天数"按自然日数差计算,出生当天记第 0 天;下次生日倒计时按页面内写好的秒级时间戳递减,缓存页跨天打开会自动刷新日期。生日倒计时的通用算法见生日倒计时,从出生算总天数见出生天数计算器。

本页不做什么

不做归属地精查(市县段区划变化大)、不做号码真伪核验(校验通过≠真实有效)、不给运势命理(那与身份证结构无关)。农历与属相换算见农历生日查询与属相配对,虚岁口径见虚岁怎么算,年份速查见今年多大速查。

常见问题

身份证号码怎么算出年龄?

身份证第 7 到 14 位就是出生日期码,4 位年、2 位月、2 位日,直接读出公历生日。以示例号 110101199003074231 为例,第 7-14 位是 19900307,即 1990年3月7日。周岁按生日口径:今天 2026年10月30日 已过 3月7日 这个"对应日",所以是 36 周岁;若只看年份相减得 36,生日没过时这两个数会差 1。

校验码(第 18 位)是怎么算出来的?

把前 17 位数字分别乘固定权重 7、9、10、5、8、4、2、1、6、3、7、9、10、5、8、4、2,求和后除以 11 取余数,余数 0-10 依次对应校验码 1、0、X、9、8、7、6、5、4、3、2。示例号前 17 位加权求和得 198,198 ÷ 11 余 0,对应校验码 1,与号码末位一致,号码自洽。第 18 位是 X 就是"10",是罗马数字替位,不是英文字母,也和性别无关。

15 位老身份证怎么算年龄?

15 位老证(1984-1999 年使用)的出生日期只有 6 位 YYMMDD,缺世纪位,按主流口径补 19:110101900307 这类号读作 1990 年出生。补全 4 位年份、加上按 GB 11643-1999 算出的校验码,就升成 18 位:示例输入 15 位号会得到升级结果 110101199003074231。年龄算法与 18 位完全一致。

身份证能看出性别吗?看哪一位?

18 位看第 17 位(顺序码的末位):奇数男性、偶数女性。示例号第 17 位是 3,奇数,判定为男。15 位老证看第 15 位,规则相同。第 18 位校验码与性别没有关系——网上流传"末位 X 是女性"是讹传。

为什么我的年龄和某些网站算的差 1 岁?

两种口径:周岁要过完生日才算长一岁(2 月 29 日出生者按《民法典》第二百零二条,平年以 2 月 28 日为对应日);简单年差直接用今年减出生年,生日没到时会比周岁大 1。本页两个数并列给出,主答案用周岁。

输入的身份证号会被上传或保存吗?

不会。本页的计算在你浏览器里完成:号码只用于当次页面内的数字解析,没有上传、没有存储、没有统计。页面里展示的示例号是编造的演算样例。为了稳妥,你查完后关掉页面即可,不留痕迹。

校验位不对的号码还能算年龄吗?

本页会把"校验码不匹配"当作错误提示(很可能是抄错位,或号码本身是编造的),不给年龄结果——因为出生日期可能本身就是错的,算出来的年龄会误导。地址码不存在、月份 13、2 月 30 日这类结构错误同理,都会被逐条列出来。

从身份证能看出属相吗?

号码里只有公历日期,属相要按农历年分界:春节前出生属上一年的生肖,与公历年份直接查表会出错;民俗还有按立春分界的另一套口径。本页不给属相结论,精确判断请用属相年龄与农历生日查询,把出生日期换算到农历年再看。

图解:身份证里的年龄是怎么读出来的

三张图对应三步:先拆四段结构,再按权重验校验位,最后从生日换算三种年龄口径。

18位身份证号码四段结构示意图
18 位号码的四段:地址码 6 位、出生日期码 8 位、顺序码 3 位、校验码 1 位,年龄全部藏在第二段
身份证校验码加权求和模11映射流程图
校验码怎么算:17 位数字乘权重求和,模 11 后查映射表得到末位
身份证周岁虚岁与已活天数换算示意图
同一张号码能读出三种年龄:周岁按生日、年差只看年份、天数逐日数

继续查询

身份证里能读出的是公历生日,接下来的换算各有专门入口:查各出生年份的周岁对照去今年多大速查,分清周岁虚岁去虚岁怎么算,属相分歧看属相年龄,把生日换农历去农历生日查询。