ASCII-->Ansi-->Unicode-->UTF8 关于编码 自己的总结
各种不同的编码 无非就是效率 最大化。
我猜测编码的进化流程:
ASCII(American Standard Code for Information Interchange)----满足了美国和西方国家。但是只能传输英文。------->>>
Ansi(American National Standards Institute)------后来各个国家眼热 为了自己的安全,因为要战争吗,设计了自己的一套。可以传输英文和本土语言------->>>
Unicode(Universal code 也可以称UTF-16)-------------后来不打仗了,各个国家要合作共赢,于是国际组织设计了一套包容全球语言的编码,这种编码的最小字节是2个字节,具体哪个国家的语言再前,哪个国家再后,要看这个国家的实力了,非洲没实力,所以只能靠后排,那么就会导致一个非洲英文字母a 都需要4个字节,操蛋。那个时候的中国有点实力还好,大多数常用中文70%只占2个字节,不常用的(30%)占3个字节------------>>>
UTF-8(8-bit Unicode Transformation Format)-------unicode的设计目的是为了用一种设计方式,兼容全球语言,方便全球通信,但是设计的时候,我猜测有过争执,到底 最小字节是1还是2呢。这个是没有答案的,看对谁有利了。如果最小用一个字节 则对西方国家有利。如果最小用2个字节 则对除了西方国家 的其它国家都有利。举例:东方国家 中国 日本 韩国 非洲国家 中东地区的国家 等等。unicode 即UTF-16 用最小2个字节 是一种适中的方法,就是说 牺牲一点西方国家 但是 能兼顾到很多国家 。就这 西方国家不满意了,毕竟 西方国家是贪婪的 资本主义。他们认为 不应该牺牲 他们 来兼顾更多的国家。于是 他们又发明了 或者说 unicode的另一种表达方式 用 最小1个字节开始 来表达。这样 对西方国家 就有利。因为英文只占一个字节,但是对其它国家都不利,因为会导致 其它国家的排序 更靠后。比如中文UTF-8下 50%的中文占两个字节,30%占3个字节,20%占4个字节。
所以根据情况来选择了,如果你是西方国家 不想走向国际的话 就只用 ascii就行 1个字节。如果要走向国际 有两种选择要么UTF-8 要么UNICODE,如果你以本土为主 其它国家为辅 可以UTF-8,如果以其它国家为主
可以UNICODE。
如果你是东方国家 比如中国,不想走向国际 挣很多国家的钱的话 可以用ansi 即GBK 最节省资源。如果你要走向国际 要么UTF-8 要么UNICODE ,中国人口多 中国为主的话 可以 UNICODE 西方为主的话 可以 UTF-8.
凡事有利有弊 ,自己根据情况 酌情选择。
到点了 得赶紧回去吃饭了。

ASCII-->Ansi-->Unicode-->UTF8 关于编码 自己的总结的更多相关文章
- 各种字符编码方式详解及由来(ANSI,UNICODE,UTF-8,GB2312,GBK)
一直对字符的各种编码方式懵懵懂懂,什么ANSI UNICODE UTF-8 GB2312 GBK DBCS UCS……是不是看的很晕,假如您细细的阅读本文你一定可以清晰的理解他们.Let's go! ...
- 【转】Unicode utf8等编码类型的原理
原文地址http://www.cnblogs.com/daxiong2014/p/4768681.html Unicode utf8等编码类型的原理 1.ASCII码 我们知道,在计算机内部,所有的 ...
- 编码 ASCII, GBK, Unicode+utf-8
0. 1.参考 网页编码就是那点事 阮一峰 字符编码笔记:ASCII,Unicode 和 UTF-8 2.总结 美国 ASCII 码 发音: /ˈæski/ :128个字符,只占用了一个字节的后面7位 ...
- ascii unicode utf-8 url编码
ascii 编码 计算机内部,所有信息最终都是一个二进制值 上个世纪60年代,美国制定了一套字符编码ascii ascii 编码就是定义:英语字符与二进制位之间的关系 unixcs unicode编码 ...
- [转]Unicode utf8等编码类型的原理
FROM:http://www.cnblogs.com/daxiong2014/p/4768681.html 1.ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进 ...
- 字符编解码的故事(ASCII,GBK,Unicode,Utf-8区别)
很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们认为8个开关状态作为原子单位很好,于是他们把这称为"字节". 再后来,他们又做了一 ...
- Unicode utf8等编码类型的原理
1.ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte). ...
- [转]Python的ASCII, GB2312, Unicode , UTF-8
2007-12-13 10:50:47| 分类: Python实用软件编|举报|字号 订阅 ASCII 是一种字符集,包括大小写的英文字母.数字.控制字符等,它用一个字节表示,范围是 0-1 ...
- Python的ASCII, GB2312, Unicode , UTF-8 相互转换
ASCII 是一种字符集,包括大小写的英文字母.数字.控制字符等,它用一个字节表示,范围是 0-127 Unicode分为UTF-8和UTF-16.UTF-8变长度的,最多 6 个字节,小于 127 ...
- python 保存文本txt格式之总结篇,ANSI,unicode,UTF-8
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAEmCAIAAACmsIlUAAAgAElEQVR4nOydezxU+f/HP49WSstKkZ
随机推荐
- 【CF600E】Lomsat gelral(dsu on tree)
[CF600E]Lomsat gelral(dsu on tree) 题面 洛谷 CF题面自己去找找吧. 题解 \(dsu\ on\ tree\)板子题 其实就是做子树询问的一个较快的方法. 对于子树 ...
- CF891E [数学题]
1.答案=初始乘积-最终乘积的期望.然后直接dp+ntt是O(nklogk) 2.考虑展开式子ans=sum(a[i]-b[i]),大概感受一下未知数个数相同的项系数相同,问题在于如何求系数 3.没思 ...
- Android APK打包流程
简单build流程图 官网给了我们一张非常简单的编译.打包.apk生成内容以及签名的图片.图片大体介绍了从Project到运行到设备或者模拟器的一个大体流程,我们也从中看到一个完整的apk包含如下内容 ...
- USB驱动之CDC类的介绍与应用20160905
USB的协议其实是很复杂的,如果要深入学习估计要一两年才能熟悉透.本文主要是讲如何使用官方已经写好的库进行二次开发,以达到我们自己使用的目的.我们知道USB可以用来接U盘,声卡,读卡器,鼠标键盘等等, ...
- 杨辉三角之c实现任意行输出
#include<stdio.h> #include<stdlib.h> int** fmalloc(int n){ int** array; //二维指针 int i; ar ...
- js 时间戳 转化
new Date((1524142795*1000)).toJSON().slice(11,16)
- Python基础之面向对象(进阶篇)
面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以讲多函数中公用的变量封装到对象中) 对象,根据模板创建的实例(即:对象),实 ...
- tomcat启动 报org.apache.catalina.LifecycleException异常
java 服务器 tomcat启动 报org.apache.catalina.LifecycleException异常 异常代码如下: [2018-05-10 04:45:08,856] Artifa ...
- HDU 1930 CRT
也是很模板的一道题,给出一些数,分割,模数固定是4个互质的. /** @Date : 2017-09-16 23:54:51 * @FileName: HDU 1930 CRT.cpp * @Plat ...
- POJ 1389 Area of Simple Polygons 扫描线+线段树面积并
---恢复内容开始--- LINK 题意:同POJ1151 思路: /** @Date : 2017-07-19 13:24:45 * @FileName: POJ 1389 线段树+扫描线+面积并 ...