ASCII、Unicode与UTF-8的关系

news/2025/2/23 15:26:34

计算机最早只有127个字母被编码到计算机里,包括大小写英文字母、数字还有一些符号,这个编码就是ASCII编码。因为计算机最早是外国人发明的,所以字符没有考虑中文,以及其他各国语言。ASCII编码表早在最开始学C语言的时候就有接触,一个字节用来存储一个字符。

后来我们也发展了自己的编码,用来存储中文,中文使用一个字节存储是不够的,至少需要两个字节,有些特殊的文字还需要3-4或者更多的字节来处理,一般不会超过六个字节,这就是GB2312编码。

那同样的,其他国家也会制定将自己国语融入的编码制度,每个国家都有自己的标准,每个国家在制定自己的编码的同时很难做到和其他国家制定的标准不存在冲突,所以在存在多种语言混合的环境中,会出现乱码的情况,为了解决这个问题,就出现了Unicode

Unicode把所有的语言都统一到一套编码中,这样就不会出现冲突,也不会产生乱码。Unicode一般使用两个字节表示一个字符,无论是中文还是英文。这就出现了一个问题,对于英文字符来说,在ASCII下使用一个字节就足够存储,但在Unicode下使用两个字节存储,这样Unicode要比ASCII需要多一倍的存储空间。

最后,Unicode做出了改进,提出可变长编码,即UTF-8编码,规定常用的英文字母被编码成1个字节,汉字通常使用3个字节,特别的字符使用4-6个字节。如果你要传输的文本包含了大量的英文字符,使用UTF-8编码可以节省空间。

 


http://www.niftyadmin.cn/n/705485.html

相关文章

JS写的漂亮只是一方面,你可不要忽视浏览器的兼容性呀!:P

这是我项目中的一段JS代码,嗨,只是在IE中没有问题,在火狐及其它浏览器就出现问题了! 看代码: <div class"fllbJs"> <div id""> <dl id"Dl1" class"fllbJsDl" style"display: block;"> <dt data-value&…

关于Jupyter NoteBook下载与使用

第一步&#xff0c;下载notebook&#xff0c;有两种办法&#xff0c;其一是在官网下载anaconda&#xff0c;因为电脑上已经之前已经安装好了python&#xff0c;所以选择了第二种方法&#xff0c;直接在cmd中输入 &#xff1a;pip install jupyter 就可以成功安装 如果输入命令…

微信朋友圈:应对春节千亿访问量背后的故事

欢迎大家前往腾讯云社区&#xff0c;获取更多腾讯海量技术实践干货哦~ 作者&#xff1a;腾讯技术工程官方号 微信朋友圈包括图片和视频两套业务架构组成&#xff0c;朋友圈图片的特点是请求量大、消耗计算资源较多&#xff0c;视频则主要消耗带宽。朋友圈的数据是永远存储的&am…

深度学习-吴恩达第一课第二周课程作业

这周作业是&#xff0c;给出一张图片&#xff0c;判断这张图是不是猫。 这是一个二分类问题&#xff0c;结果是非0即1的&#xff0c;使用逻辑回归&#xff08;Logic Regression&#xff09;&#xff0c;可以说&#xff0c;了解这个回归方法&#xff0c;有些python基础&#xf…

附加导航 affix,side--toolbar(可结合博客园使用~)

什么是附加导航&#xff1f;bootstrap的affix插件side--toolbar类似于百度百科的附加导航一&#xff0c;什么是附加导航&#xff1f; 当你浏览百度百科&#xff0c;或者bootstrap时&#xff0c;如果当页的内容很多&#xff0c;当页面下滑到一定程度时&#xff0c;就会在页面的最…

深度学习-吴恩达第一课第三周课程作业

第二周的课程作业是利用逻辑回归来训练一个分类器来辨别一张图片是否为猫&#xff0c;这周老师讲了单隐层的神经网络&#xff0c;所以先看看利用这个模型能否在上次作业的基础上对训练准确度作出改善 训练一个神经网络 神经网络分为几层&#xff0c;隐藏层中包含几个神经元&am…

Docker MongoDB 数据库备份 并复制到宿主 恢复

一、从宿主连接到MongoDB容器 docker exec -it <你的MongodDB容器名> /bin/bash 二、使用mongodump命令进行数据库备份 容器中执行 mongodump -h 127.0.0.1 --port 27017 -u用户名 -p密码 -d test -o /dump 参数作用 -hhost--port端口-d指定数据库-o指定备份到哪个目录…

GMF里实现editpolicyProviders扩展点

通过org.eclipse.gmf.runtime.diagram.ui.editpolicyProviders扩展点可以给GMF应用里的editpart增加所需要的editpolicy&#xff0c;通过editpolicy返回的command&#xff0c;就可以自由的控制editpart的行为。顺便说一句&#xff0c;GMF Runtime之所以提供这许多扩展点&#x…