zoukankan      html  css  js  c++  java
  • 非数值数据的编码方式

    非数值数据的编码方式

    逻辑数据,字符数据,汉字数据,图像数据,声音数据,等等,不是表示数字的数据都是非数值数据。

    编码的区别

    ASCII编码:ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,
    使用7 位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0 到9、标点符号, 以及在美式英语中使用的特殊控制字符。
    GBK编码:由于ASCII编码不支持中文,因此,当中国人用到计算机时,就需要寻求一种编码方式来支持中文。
    于是,国人就定义了一套编码规则:当字符小于127位时,与ASCII的字符相同,
    但当两个大于127的字符连接在一起时,就代表一个汉字,第一个字节称为高字节(从0xA1-0xF7),第二个字节为低字节(从0xA1-0xFE),这样大约可以组合7000多个简体汉字。这个规则叫做GB2312。
    Unicode编码:因为世界国家很多,每个国家都定义一套自己的编码标准,结果相互之间谁也不懂谁的编码,就无法进行很好的沟通交流,
    所以及时的出现了一个组织ISO(国际标准化组织)决定定义一套编码方案来解决所有国家的编码问题,
    这个新的编码方案就叫做Unicode。
    注意Unicode不是一个新的编码规则,二是一套字符集(为每一个「字符」分配一个唯一的 ID(学名为码位 / 码点 / Code Point)),可以将Unicode理解为一本世界编码的字典。
    ISO规定:每个字符必须使用俩个字节,即用16位二进制来表示所有的字符,对于ASCII编码表里的字符,保持其编码不变,只是将长度扩展到了16位,其他国家的字符全部统一重新编码。
    由于传输ASCII表里的字符时,实际上可以只用一个字节就可以表示,所以,这种编码方案在传输数据比较浪费带宽,存储数据比较浪费硬盘。
    UTF-8编码:由于Unicode比较浪费网络带宽和硬盘,因此为了解决这个问题,就在Unicode的基础上,定义了一套编码规则(将「码位」转换为字节序列的规则(编码/解码 可以理解为 加密/解密 的过程)),
    这个新的编码规则就是UTF-8,采用1-4个字符进行传输和存储数据。

     

    校验码的方式

    1.奇偶校验码

    2.海明校验码

    3.循环冗余校验码

  • 相关阅读:
    Linux 信号signal处理机制
    va_start、va_arg、va_end、va_copy 可变参函数
    辛星笔记——VIM学习篇(推荐阅读)
    每个程序员都应该读的书
    igmpproxy源代码学习——配置信息加载 loadConfig
    windows下gvim搭建IDE
    插入排序与循环不变式
    6个变态的C语言程序
    安卓原生百度地图(5)导航和语音播报
    安卓原生百度地图(4)路线规划
  • 原文地址:https://www.cnblogs.com/zjw1324399/p/13697186.html
Copyright © 2011-2022 走看看