计算机的字符与编码集

news2024/11/19 0:36:32

文章目录

  • 前言
  • 一、字符编码集的历史
    • 1.ASCII码
    • 2.Extended ASCII码
    • 3.字符编码集的国际化
  • 二、中文编码集


前言

今天给大家介绍计算机的字符与编码集,分为两部分:字符编码集的历史中文编码集


一、字符编码集的历史

这部分包含三个板块内容:ASCII码Extended ASCII码字符编码集的国际化

1.ASCII码

对于ASCII码,相信接触过编程的人应该都不陌生,它是我们平时常用的一种编码方式,如大小写字母、数字、符号等等都是属于ASCII码里面的。ASCII码特点如下:

  • 使用7个bits就可以完全表示ASCII码
  • 包含95个可打印字符
  • 33个不可打印字符(包括控制字符)

我们可以做个简单运算:33 + 95 = 128 = 2^7,接下来我们通过下表来完整了解ASCII码的所有字符:

在这里插入图片描述

从表中我们可以看出,前面的32个控制字符加上表中最后一个共是33个控制字符,其他的都是我们常见的可打印字符。二战时期,计算机最早诞生于美、英国家,所以在计算机发展的早期,ASCII码就已经能满足相关国家和科学家的使用。

但随着计算机发展及普及,ASCII码逐渐无法满足需求。主要表现在:ASCII码里面,很多应用或者国家中的符号都无法表示。如数学符号 “÷ ≠ ≥ ≈ π” 等等一些字符ASCII码都无法表示。

这时候就想到了第一次对ASCII码进行扩充,7bits => 8bits,使用8个比特位代替原来的7比特,那么原来的 127 个字符就可以扩充为 256 个字符了,也就是可拓展的ASCII码:Extended ASCII码

2.Extended ASCII码

如下表所示,为扩展的那部分ASCII码:
在这里插入图片描述

从中可以看到,包含了常见数学运算符、带音标的欧洲字符、其他常用符、表格符等。使用了这个可拓展的ASCII码极大的补充了原来ASCII码所不能展示的内容,使得计算机所能表达的内容越来越丰富。

虽然在这里面,可拓展的ASCII码补充了原有ASCII码所不能表达的内容。但是随着计算机的进一步发展,越来越多的国家加入了使用计算机的行列当中,那么这个时候,对于计算机的字符与编码集的要求也越来越高,我们就需要了解字符编码集的国际化了。

3.字符编码集的国际化

对于字符编码集的国际化,有着如下的背景:

  • 欧洲、中亚、东亚、拉丁美洲国家的语言多样性
  • 语言体系不一样,不以有限字符组合的语言(如拿中文和英文做比较,对于英文来说所有单词都是由26个字母组成。但是中文就不一样了,除了偏旁部首外,每个字都是独立的,可以再组成不同词汇,也就是不以有限字符为组合)
  • 中国、韩国、日本等的语言最为复杂

在这种情况下,字符编码集的国际化就尤为重要了。在这里面,我们主要是了解中国的字符编码集,接下来就来到第二个大板块。

二、中文编码集

对于中文编码集,首先要介绍的是 GB2312,该编码集是在1980年发明出来,也是我国最早发明的编码集。它的全称是《信息交换用汉字编码字符集-------基本集》,简称 GB2312(国标2312)。这个编码集一共收录了 7445 个字符,其中包括 6763 个汉字和 682 个其它符号。

虽然这个编码集有比较完备的字符表示,但是也有一定的问题:不符合国际标准。因此,在1995年就推出了更完善的编码集:GBK,全称是《汉字内码扩展规范》。该编码集向下兼容GB2312,向上支持国际ISO标准。而且收录了 21003 个汉字,支持全部中日韩汉字。

上面介绍的 GB2313 和 GBK 都是比较完备的编码集,但是不管怎么完备,都只是本地化的编码。也就是说,这个编码在中国使用是没有问题的,但如果跨国使用就有问题。什么意思呢?举个例子:比如我们开发了一个中文网站,这时候外国友人访问了这个网站,如果他们本地没有安装 GBK 或者 GB2312 编码的话,这个网页在他们电脑里面去显示的话就是乱码的。

所以这个时候,我们不仅要有本地化的编码,还要有一个全球的规范。这个规范就是:Unicode 字符集,Unicode又称为:统一码、万国码、单一码,也就是说 Unicode 可以表达全世界所有的语言。它定义了世界通用的符号集,使用 UTF-* 实现了编码(如UTF-8、UTF-16)。其中UTF-8是最为通用的全球编码方式,它以字节为单位对Unicode进行编码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1089089.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【特纳斯电子】基于物联网的空气质量检测-实物设计

视频及资料链接:基于物联网的空气质量检测-实物设计 - 电子校园网 (mcude.com) 编号: T0082203M-SW 设计简介: 本设计是基于物联网的空气质量检测系统,主要实现以下功能: 1.通过OLED显示模式、温度、湿度、PM2.5、…

【Java】查找jdk步骤

需求描述 解决方法 第一步 第二步 第三步 第四步 参考文章

自定义jenkins镜像提示FontConfiguration.head错误

系统使用:Debian12,jdk17 提示问题:缺少字体 找一台jdk8的环境,在lib文件夹中找到fontconfig.bfc find / -name *fontconfig* 复制到jenkins目标服务器中,jdk目录的lib中 再次启动jenkins服务正常

云梦富盈:智慧投资引领未来市场

随着2023年的到来,全球股市呈现出令人关注的趋势和挑战。投资者纷纷寻求智慧投资,以更好地把握市场动向。云梦富盈,作为一支备受瞩目的投资团队,正在洞悉并解析2023年全球股市的趋势,为投资者提供智慧投资的护航。 20…

力扣-415.字符串相加

Idea 模拟:竖式加法 从后面往前逐位相加,然后将相加的结果模10,添加到答案字符串中去 最后需要判断一下是否还有进位问题 需要将答案string翻转 AC Code class Solution { public:string addStrings(string num1, string num2) {string ans;…

LruCache实现原理

序、慢慢来才是最快的方法。 回顾 LRU (Least Recently Used)最近最少策略是最常用的缓存淘汰策略。LRU 策略会记录各个数据块的访问 “时间戳” ,最近最久未使用的数据最先被淘汰。与其他几种策略相比,LRU 策略利用了 “局部性…

Sui账户抽象消除用户使用障碍,让大规模用户使用区块链成为可能

Sui通过其本机语言和两个特定功能实现了账户抽象,使账户管理中更加细节化的过程自动化。无论是zkLogin还是赞助交易,都简化了用户的使用过程,而Sui Move的基本结构则使开发人员能够提供丝滑的体验。 最近,随着区块链寻求扩大其用…

Flink(林子雨慕课课程)

文章目录 12.Flink12.1 Flink简介12.2 为什么要选择Flink12.3 Flink应用场景12.4 Flink技术栈、体系架构和编程模型12.5 Flink的安装和编程实战 12.Flink 12.1 Flink简介 企业的处理架构已经由传统数据处理架构和大数据Lamda架构向流处理架构演变 Flink实现了Goole Dataflow…

配置nginx的虚拟主机

1.基于域名的虚拟主机 vim /usr/local/nginx/conf/nginx.conf 复制一个 cd /var/www/html/ mkdir kgc accp cd kgc/ vim index.html this is kgc! cd .. cd accp this is accp! vim /etc/hosts systemctl restart nginx 2.基于ip的虚拟主机 ifconfig ens33:0 192.168…

如何生成SSH服务器的ed25519公钥SHA256指纹

最近搭建ubuntu服务器,远程登录让确认指纹,研究一番搞懂了,记录一下。 1、putty 第一次登录服务器,出现提示: 让确认服务器指纹是否正确。 其中:箭头指向的 ed25519 :是一种非对称加密的签名方法&#xf…

AMEYA360:北京君正集成电路多核异构跨界处理器X2000

• 双XBurst2核,主频1.2GHz • 跨界第三核XBurst0(240MHz),面向安全管理和实时控制 • H.264编、解码器1080P30fps • 内置LPDDR3 128MB • 双摄Mipi接口双ISP,可实时同步 • 丰富的外设接口 应用领域 • 智能音频:智能音箱&#…

ubuntu安装datasophon问题记录

问题描述: 主机agent分发报红 解决步骤一: 修改datasophon-worker.tar.gz文件 解压/opt/datasophon/DDP/packages目录下的datasophon-worker.tar.gz文件修改datasophon-worker/bin目录下的datasophon-worker.sh文件 . /etc/profile解决步骤二: chkconfig命令不存在 当执行ch…

人事管理系统springboot42

大家好✌!我是CZ淡陌。一名专注以理论为基础实战为主的技术博主,将再这里为大家分享优质的实战项目,本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目,希望你能有所收获,少走一些弯路…

龙迅LT7911UXC 是一款高性能TYPE-C/DP/EDP转换四端口MIPI/LVDS的芯片,还支持图像处理

龙迅LT7911UXC 1.描述: LT7911UXC是一款用于VR/显示应用的高性能Type-C/DP1.4a到MIPI或LVDS芯片。HDCP RX作为 HDCP中继器的上游端,可以与其他芯片的HDCP TX协同工作,实现中继器的功能。对于DP1.4a 输入,LT7911UXC可以配置为1…

基于LoRa的远程气象站:实现远程气象监测与数据传输

随着物联网技术的不断发展,基于无线通信的远程气象监测系统得以广泛应用。本文将介绍一种基于LoRa技术的远程气象站,通过LoRa模块实现气象数据的远程采集和传输,为气象监测提供了一种高效、低功耗的解决方案。 LoRa技术概述 LoRa&#xff08…

论文阅读》用语义解耦改进共情对话生成 2022 IJCKG

《论文阅读》用语义解耦改进共情对话生成 前言简介相关知识对抗学习模型架构Semantics DecouplerEmpathetic Generator损失函数前言 论文阅读不迷路! 今天为大家带来的是《Improving Empathetic Dialogue Generation with Semantics Decoupling》 出版:IJCKG(International…

Variations-of-SFANet-for-Crowd-Counting记录

论文:Encoder-Decoder Based Convolutional Neural Networks with Multi-Scale-Aware Modules for Crowd Counting 论文链接:https://arxiv.org/abs/2003.05586 源码链接:GitHub - Pongpisit-Thanasutives/Variations-of-SFANet-for-Crowd-C…

如何用BI制作图表组合?

BI(Business Intelligence)是一种通过收集、分析和可视化数据来帮助企业做出决策的技术和工具。在BI中,制作图表组合是一种常见的方式,可以将不同的图表类型组合在一起,以更全面地呈现数据。 下面将详细介绍如何使用B…

行业追踪,2023-10-13

自动复盘 2023-10-13 凡所有相,皆是虚妄。若见诸相非相,即见如来。 k 线图是最好的老师,每天持续发布板块的rps排名,追踪板块,板块来开仓,板块去清仓,丢弃自以为是的想法,板块去留让…

Redis分布式锁最牛逼的实现(Java 版,最牛逼的实现方式)

写在前面的话 分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。 本篇博客将介绍第二种方式,基于Redis实现分布式锁。 为什么需要分布式锁? 在单机环境下编写多线…