1. ASCII编码(使用一个字节编码)
  • ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,使用7 位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0到9、标点符号,以及在美式英语中使用的特殊控制字符。其中最后一位用于奇偶校验。
  • 问题:ASCII是单字节编码,无法用来表示中文(中文编码至少需要2个字节),所以,中国制定了GB2312编码,用来把中文编进去。但世界上有许多不同的语言,所以需要一种统一的编码。
  • 注: 奇偶校验: 是一个表示给定位数的二进制数中1的个数是奇数还是偶数的二进制数.
    对于奇校验,如果前7位的二进制位中1的个数为奇数,则校验位为0;否则为1.
    对于偶校验,如果前7位的二进制位中1的个数为奇数,则校验位为1,否则为0.
    当校验的时候只能检验出奇数个位出现错误.即有一位不一样,错误可以检验出(比如是奇校验,本来应该有奇数个1,但是得到的结果却是偶数个1,则校验出错误).但是如果偶数个位不一样,则检验不出错误.(比如是奇校验,本来应该有3个1,有偶数个位不一样,比如2位发生变化,结果有5位变的不一样,还是奇数,则校验不出错误).
  1. GB2312编码
    GB2312编码主要是对汉字进行编码,同时还收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个全角字符。

  2. Unicode编码(使用两个字节编码)
    Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。
    Unicode最常用的是用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)。现代操作系统和大多数编程语言都直接支持Unicode。

  3. Unicdoe编码和ASCII编码的区别

  • ASCII编码是1个字节,而Unicode编码通常是2个字节。
    字母A用ASCII编码是十进制的65,二进制的01000001;而在Unicode中,只需要在前面补0,即为:00000000 01000001。
  • 问题:如果统一成Unicode编码,乱码问题从此消失了。但是,如果你写的文本基本上全部是英文的话,用Unicode编码比ASCII编码需要多一倍的存储空间,在存储和传输上就十分不划算。
  1. UTF-8编码(针对Unicode的可变长度字符编码)
    本着节约的精神,出现了把Unicode编码转化为“可变长编码”的UTF-8编码。
    它可以用一至四个字节对Unicode字符集中的所有有效编码点进行编码(本来UTF-8编码有6位,但是后来规定只用前四位).如果你要传输的文本包含大量英文字符,用UTF-8编码就能节省空间(相对于Unicode编码)。
    ASCII编码实际上可以被看成是UTF-8编码的一部分,所以,大量只支持ASCII编码的历史遗留软件可以在UTF-8编码下继续工作。

  2. 计算机中通用的字符编码的工作方式

  • 在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。
  • 比如用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成后,保存的时候再把Unicode转换为UTF-8保存到文件
  • 浏览网页的时候,服务器会把动态生成的Unicode内容转换为UTF-8再传输到浏览器
    参考链接:Unicode,ASCII,UTF-8的区别

ASCII编码、GB2312编码、Unicode编码、UTF-8编码相关推荐

  1. 常用字符集(ASCII,ISO8859-1,GB2312,GBK,Unicode)和字符编码(UTF-8,UTF-16)

    转自:https://blog.csdn.net/wn084/article/details/80363792 参考:https://blog.csdn.net/halchan/article/det ...

  2. 【转】刨根究底字符编码之十——Unicode字符集的字符编码方式

    一.字符编码方式CEF的选择 1. 由于Unicode字符集非常大(并且作为开放字符集还在不断扩展之中),有些字符的编号(即码点值)需要两个或两个以上字节来表示,而要对这样的编号进行编码,也必须使用两 ...

  3. 字符集ASCII、GBK、UNICODE、UTF在储存字符时的区别

    ASCII编码(American Standard Code for Information Interchange,美国信息互换标准代码),使用127个8进制字节表示英文和半角字符. GBK (Gu ...

  4. 深入理解-字符编码ASCII,GB2312,GBK,Unicode,UTF-8

    字符编码 简介 起初再考虑写不写这篇文章,感觉这篇文章比较枯燥乏味,而且自己感觉也没理解的太透彻,就把理解的记录下来,所以这是纪念版的 前方高能,非战斗人员请迅速撤离,我要开始装逼了. Go hard ...

  5. java utf-8字符表_Java中的ASCII、Unicode和UTF-8字符编码集

    首先讲一下几种字符的编码方式: 1. ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态 ...

  6. ASCII、ANSI、UNICODE及UTF-8编码

    ASCII.ANSI.UNICODE及UTF-8编码 今天用notepad.exe另存文本文件的时候,发现下面的编码中,有个ANSI编码,文章题目中的几个编码在解决B/S程序乱码问题的时候,基本都了解 ...

  7. 详解Unicode和JavaScript字符编码

    Unicode Unicode,又称万国码.统一码和国际码,是由统一码联盟制定的一套规范统一的字符编码集,其设计意图是将世界上所有字符都包含在其中,它使用特定的十六进制编号来表示字符,每一个特定十六进 ...

  8. UTF8编码转换成Unicode

    /************************************************************************************************* * ...

  9. python字符编码使用的是什么编码_不可不知的Python字符编码使用技巧(上)

    Python语言在网络爬虫领域应用的十分广泛.在爬虫的应用程序中,我们需要对网页上获取的数据进行处理,其中字符的编码.解码常常让人感到困惑:ASCII码.Unicode.字符编码什么的,很多朋友一直为 ...

  10. 字符集编码详解【ASCII 、GB2312、GBK、GB18030、unicode、UTF-8】(转)

    ASCII字符集编码 ASCII码是7位编码,编码范围是0x00-0x7F.ASCII字符集包括英文字母.阿拉伯数字和标点符号等字符.其中0x00-0x20和0x7F共33个控制字符. 只支持ASCI ...

最新文章

  1. windows node.js 安装
  2. 纪念lxwcto(潜龙)
  3. 200924阶段一C++STL
  4. 零拷贝、mmap、sendfile
  5. 拯救你的颈椎,笔记本支架如何选择?
  6. 分布式存储系统设计 - Gossip
  7. 13万张表+数亿行代码,迁移只需数小时,还是异构数据库
  8. 联想r720内存频率_联想小新Pro 14 2021怎么样 联想小新Pro 14 2021全面评测
  9. Ubuntu下U盘变成只读的解决方法
  10. 阿里云 部署并开启nodejs应用
  11. 新型计算机作文1000,科幻的作文1000字(精选9篇)
  12. android自定义TextView字体
  13. Oracle数据库下载安装和卸载简单说明
  14. jieBa analyse.extract_tags
  15. android 顶部弹窗,android显示通知,并在任何应用程序顶部弹出
  16. c语言五子棋学年论文,基于c语言五子棋小游戏生本科论文.doc
  17. 2022第七届“数维杯”大学生数学建模夏令营
  18. java并发编程 目录_Java并发编程实战的作品目录
  19. go项目部署服务器保姆级教程(带图)
  20. 腾讯开源推理框架TNN Android编译不通过

热门文章

  1. 苹果android怎么设置,天猫魔盒怎么投屏使用 苹果和安卓手机操作设置方法
  2. Kibana 操作 Elasticsearch
  3. wgs84坐标系拾取工具_COORD坐标转换
  4. CGAL库的安装及示例代码的编译
  5. mysql +cobar_cobar
  6. 三极管放大电路原理-电子技术方案
  7. 如何实现微信公众号批量全部用户标签管理功能
  8. 实战解决小程序图片加载问题
  9. linux导航改端口波特率,各大导航端口速率修改方法
  10. **数据挖掘--决策树ID3算法(例题)