在计算机中,所有的数据在存储和运算时都要使用二进制数表示,而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了,ASCII统一规定了上述常用符号用哪些二进制数来表示。
☀1.ASCII
ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC 646。ASCII第一次以规范标准的类型发表是在1967年,最后一次更新则是在1986年,到目前为止共定义了128个字符 [1] 。
☀1.1产生原因:
在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码,统一规定了上述常用符号用哪些二进制数来表示 [2] 。
美国信息交换标准代码是由美国国家标准学会(American National Standard Institute , ANSI )制定的,是一种标准的单字节字符编码方案,用于基于文本的数据。它最初是美国国家标准,供不同计算机在相互通信时用作共同遵守的西文字符编码标准,后来它被国际标准化组织(International Organization for Standardization, ISO)定为国际标准,称为ISO 646标准。适用于所有拉丁文字字母 [3] 。
☀2.编码和解码
☀2.1编码
将字符串按照某个字符集,转换为01类型的数据进行存储。
通常如果一样东西需要编码。最根本的说明这样东西并不适合传输或者存储。原因多种多样:
1. 从最基础的字符串,必须通过编码为0 1类型,才能传输存储到计算机中。
2. 随着应用场景的变化和逐渐复杂。如Size过大,包含隐私数据,都要使用编码解决。
3. 对于Url来说,本身的字符串已经被编码,之所以要进行二次编码(URLEncode),是因为Url中有些字符会引起歧义。
☀2.2解码
将01类型的数据按照某个字符集转换为字符串。
有编码就会有解码,重新恢复原状。






