[{"createTime":1735734952000,"id":1,"img":"hwy_ms_500_252.jpeg","link":"https://activity.huaweicloud.com/cps.html?fromacct=261f35b6-af54-4511-a2ca-910fa15905d1&utm_source=V1g3MDY4NTY=&utm_medium=cps&utm_campaign=201905","name":"华为云秒杀","status":9,"txt":"华为云38元秒杀","type":1,"updateTime":1735747411000,"userId":3},{"createTime":1736173885000,"id":2,"img":"txy_480_300.png","link":"https://cloud.tencent.com/act/cps/redirect?redirect=1077&cps_key=edb15096bfff75effaaa8c8bb66138bd&from=console","name":"腾讯云秒杀","status":9,"txt":"腾讯云限量秒杀","type":1,"updateTime":1736173885000,"userId":3},{"createTime":1736177492000,"id":3,"img":"aly_251_140.png","link":"https://www.aliyun.com/minisite/goods?userCode=pwp8kmv3","memo":"","name":"阿里云","status":9,"txt":"阿里云2折起","type":1,"updateTime":1736177492000,"userId":3},{"createTime":1735660800000,"id":4,"img":"vultr_560_300.png","link":"https://www.vultr.com/?ref=9603742-8H","name":"Vultr","status":9,"txt":"Vultr送$100","type":1,"updateTime":1735660800000,"userId":3},{"createTime":1735660800000,"id":5,"img":"jdy_663_320.jpg","link":"https://3.cn/2ay1-e5t","name":"京东云","status":9,"txt":"京东云特惠专区","type":1,"updateTime":1735660800000,"userId":3},{"createTime":1735660800000,"id":6,"img":"new_ads.png","link":"https://www.iodraw.com/ads","name":"发布广告","status":9,"txt":"发布广告","type":1,"updateTime":1735660800000,"userId":3},{"createTime":1735660800000,"id":7,"img":"yun_910_50.png","link":"https://activity.huaweicloud.com/discount_area_v5/index.html?fromacct=261f35b6-af54-4511-a2ca-910fa15905d1&utm_source=aXhpYW95YW5nOA===&utm_medium=cps&utm_campaign=201905","name":"底部","status":9,"txt":"高性能云服务器2折起","type":2,"updateTime":1735660800000,"userId":3}]
前面我们聊过编程语言的发展史,大家都知道,最早的编程语言被称为机器语言,完全由0和1组成,在打孔纸带上运行。虽然机器识别起来非常快速,但对于使用者而言却非常繁琐,为了方便人机交流,当时的程序员便着手教计算机“学英语”。在1967年,计算机刚被发明出来没多久,美国国家标准学会便制定出了ASCII码,将拉丁字母及一些常用的符号与相应的二进制数字绑定,这样计算机就能够识别出单词。此后ASCII码经过多次修订,已经称为一种成熟的编码方式沿用至今。
ASCII码风光无限,但汉字编码就没有那么走运了。首先汉字是象形文字,与西方的字母文字有本质上的区别。字母文字的字符数量有限,ASCII码只有128个字符,一些欧洲国家因为有特殊的字母,使用扩充过后的编码体系,可以最多表示256个符号,这已经很多了,可是汉字数量数以万计,而且某些领域新字也在不断产生(比如化学、生物等),这就造成了极大的不便。因此,如何让计算机认识汉字成为另无数专家头疼的问题。
最早提出计算机汉字编码的不是中国,而是隔壁小日子。上世纪70年代,日本作为亚洲最发达的国家,在计算机上也遇到了字符编码的瓶颈,让所有人都去学英语不太现实,于是在1978年,日本工业规格协会制定了JIS
C 6226,即JIS码,里面规定了6879个字符,其中包括6355个汉字。但这些汉字是为日语服务的,让计算机学中文这件事情并没有得到解决。
于是在1980年,中国国家标准总局发表了《信息交换用汉字编码字符集》,又被称为GB2312编码,共收录汉字6763个和非汉字图形字符682个,分为94个区,每区94位,每位一个字符,因此又被称为区位码。GB2312只收录了一些常用字,适用于日常交流,但人名、古汉语的一些字并未收录,仍有不便之处,于是在1995年,国家又颁布了《汉字编码扩展规范》(GBK),总共收录了2w多字,甚至包括一些少数民族文字,基本满足了使用需求。
而在港澳台,则采用和内陆完全不同的编码方式。1984年,台湾财团法人信息产业策进会于当地13家厂商联合制定了五大中文套装软件使用内码,即BIG5码或大5码,在包括港澳台和东南亚华人等繁体中文圈应用广泛。但BIG5有先天性的问题,它在某些低比特字符和特定汉字与ASCII码重叠,导致系统无法识别产生乱码。
既然日本、大陆和港澳台都有了不同的编码方式,那么互相之间可能会因编码问题导致交流障碍,急需要有一个统一的标准来处理这些文字。于是,在各方努力协调下,1993年CJK编码诞生了,C意味着Chinese,J意味着Japanese,K意味着Korean,名字代表东亚文化圈的三国,其实不止包裹这三国,还有越南的喃字等,共包括8万多个字符,在这个东亚东南亚范围内广泛适用。
汉字编码除了常用的这些之外,还有历史较久、多用于古籍索引的四角号码,用于电报的流水码等,因为和计算机没有太大关联,这里就不一一赘述。