字符编码

本文介绍了字符编码的发展历程,从简单的ASCII编码到各国扩展的ANSI编码,再到统一的Unicode编码及其UTF-8实现方式,解释了不同编码间的差异及乱码产生的原因。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


顺序

==============

ASCII

1个字节表示1个字符,第一位为0,一共可以表示128个英文字符

==============

ANSI

为了显示本国的语言,不同的国家和地区指定了不同的标准,扩充了ASCII编码,比如GB2312(简体,国标码),BIG5(繁体),JIS(日文)等,这些都成为ANSI,也叫做MBCS

每个语言的下的ANSI编码,都有着自己的一对一的编码规则,即不同的ANSI编码之间不兼容,因此无法将两种语言存储在同一段ANSI文本中,乱码由此产生。

中国打开日本的网站会乱码,浏览器按GB2312解析JIS。

(GBK GB2312扩展,包括了大部分古文字,生僻字等)

==============

Unicode

将世界上所有的符号都存在其中,互相不重复。可以容纳100多万个符号。又叫做统一码,万国码。Unicode至今仍在不断增修,每个新版本会增加许多新的字符。UCS-4,即用4个字节表示一个字符。

==============

UTF-8

Unicode的实现方式之一,一个字符的Unicode编码是确定的。但是在实际传输过程中,由于不同的系统平台设计不一定一致,以及出于节省空间的目的,对Unicode编码的实现方式有所不同。

Unicode的实现方式称为Unicode转换格式(Unicode Transformation Format,简称为UTF)

互联网上默认的编码传输规范。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值