【计算机基础知识】字符的编码表示

欢迎来到我的:世界
希望作者的文章对你有所帮助,有不足的地方还请指正,大家一起学习交流 !
目录
- 前言
- 1.西文字符编码
- 2.中文字符编码
- 汉字输入码
- 汉字国标码
- 汉字机内码
- 汉字字形码
- 总结
前言
计算机处理的数据中,除了数值型数据以外,还有字符、图形等的非数值型数据。其中字符是日常生活中使用最频繁的非数值数据,它包括大小写英文、符号以及汉字等。由于计算机只能识别二进制编码,为了能够对字符进行识别和处理,因此要对其进行二进制编码表示;
1.西文字符编码
对西文字符编码最常用的是ASCII(美国信息交换标准代码)字符编码,该编码标准已经被国际标准化组织(ISO)指定为国际标准,是国际上使用最广泛的一种字符编码。ASCII码有两个版本:标准ASCII码和扩展ASCII码。
标准ASCII码是一个用7位二进制数来编码,用8位二进制数来表示的编码方式,其最高位为0,右边7位二进制位总共可以编出2^7=128个码。每个码表示一个字符,一共可以表示128个符号。
扩展ASCII码后128个编码称为扩展ASCII码。许多基于x86的系统都支持使用扩展(或“高”)ASCII。扩展ASCII 码允许将每个字符的第8 位用于确定附加的128 个特殊符号字符、外来语字母和图形符号。
标准ASCII是7位编码,存储时占8位,最高位是0,共可以表示128(2的7次方)个字符。
扩展ASCII是8位编码,刚好1个字节,最高位可以是0也可以是1,共可以表示256(2的8次方)个字符。

标准ASCII码:

表里的128个字符中,0~31及127(共33个)是控制字符或通信专用字符,为不可显示字符;其余字符为普通的字符(可显示字符);
常见ASCII码的大小规则:数字< 大写字母 < 小写字母。
2.中文字符编码
与英文字符一样,中文在计算机系统中也要使用特定的二进制符号来表示。通过键盘输入汉字时实际上是输入汉字的编码信息,这种编码称为汉字的输入码。计算机为了存储、处理汉字,必须将汉字的外部码换成汉字的内部码。为了将汉字以点阵的形式输出,还要将汉字的内部码转换为汉字的字形码。此外,在计算机与其他系统或设备进行信息、数据交流时还要用到国际码(交换码)。汉字编码的转换过程如图:

汉字输入码
汉字输入码是一种用计算机标准键盘上按键的不同排列组合来对汉字的输人进行的编码,也称为汉字的外部码(外码)。目前汉字输人编码法的研究和发展迅速,已有上百种汉字输人编码法。一个好的编码法应满足以下要求:编码短,可以减少击键的次数:码少,可以实现盲打;好学好记,便于学习和掌握,但现在还没有一种符合上述全部要求的汉字输入编码方法。
目前常用的汉宇编码主要分为以下三类:
音码: 主要是以汉语拼音为基础的编码方案,如全拼、双拼、简拼和智能 ABC 等。目前比较流行的拼音输人法有搜狗拼音、百度拼音等。音码的重码率高,单字输人速度慢,但容易掌握。
形码: 形码主要是根据汉字的特点,按汉字固有的形状,把汉字先拆分成部首,然后进行组合,代表有五笔字型法郑码输入法等。形码重码较少,单字输入速度快,但学习和掌握较困难。
数字编码: 常用的是区位码,用数字串输入一个汉字。区位码是将国家标准局公布的6763个两级汉字分为94个区,每个区分为94位,实际上是吧汉字集排列成二维数组的形式,行为区,列为位,每个汉字在数组中的下标就是区位码。区码和位码各用两位十进制数字表示,因此输入一个汉字需要按键4次。例如,“中”字位于第54区48位,区位码为5448。数字编码的优点是无重码,与内部编码的转换比较方便,缺点就是代码很难记;
为了提高输入速度,输入方法现已经走向了智能化,比如:语音识别输入、手写输入或扫描输入。但不管是哪种输入法,都是操作者向计算机输入汉字的手段;
汉字国标码
国标码是我国1980年发布的《信息交换用汉字编码字符集——基本集》(代号为GB2312-80),是中文信息处理的国家标准,也称为汉字交换码,简称GB。国标码对汉字进行编码的时候占用两个字节。考虑与ASCII编码的关系,国标码使用了每个字节的低7位。据统计,GB2312编码共收录汉字6763个和682个图形符号,把最常见的6763个汉字分为两级:一级汉字有3755个,二级汉字有3008个,按照偏旁部首排序。
区位码与国标码之间的关系:
区位码转换为国标码要将一个汉字的十进制区号和十进制位号分别转换为十六进制,然后再分别加上20H,就成为次汉字的国标码。
公式:汉字国标码=汉字区位码+2020H=汉字区位码+A0A0H
小知识:
不止只有GB2312编码,还有很多别的编码,比如:GBK、GB18030、BIG5、Unicode等等,咱们挑两个说一说:
GBK编码:全称《汉字内码扩展规范》1995年制订,也是和GB2312编码一样两个字节表示一个汉字,总共收录了21886个符号,包括了21003个汉字和883个其他符号;
BIG5编码:是专用于港澳地区使用的繁体字编码方案,也是两个字节表示一个汉字,总计有13053个繁体字(包括5401个常用字、7652个次常用字)、7个扩充字、以及808个各式字符,总共13868个字符;
汉字机内码
汉字在计算机内部使用的编码就是内码,也称为机内码。所以真正的计算机内部用来存储和处理和存储汉字信息的代码;每个汉字的内码占用两个字节,并且每个字节的最高位为1,这是为了避免汉字的内码与英文字符编码(ASCII码)发生冲突,容易区分汉字编码和英文字符编码,同时为了用尽可能的存储空间来表示尽可能多的汉字而做出的决定;
机内码与国标码的关系:
国标码的高字节、低字节分别+80H,就可以得到机内码;
汉字机内码=汉字国标码+8080H
汉字字形码
汉字字形码又叫做汉字字模或汉字输入码,用于汉字在显示屏或打印机输出。汉字字形码通常有两种表示方式:点阵式和矢量式。
点阵式表示字形时,分为 16X16 点阵、24X24 点阵、32X32 点阵、48X48 点阵等,点阵越大,描述的字形越细致美观,质量越高,所占存储空间也越大。在计算机中,8 个二进制位组成一个字节,它是度量空间的基本单位,因此,一个16X16点阵的字形码需要 16X16/8-32字节的存储空间,由此可得:
点阵字形码所占字节数=点阵行数X点阵列数/8
矢量式是描述汉字字形的轮廓特征,当要输出汉字时,字形和大小与计算机的分辨率无关,可以产生高质量的汉字输出,并节省存储空间。用矢量式记录的字体可以任意放缩甚至变形,而不用担心会出现锯齿状边缘。
所有汉字的输出码构成了汉字字形库,简称字库。
点阵字体与矢量字体的区别:

总结
到了最后:感谢支持
我还想告诉你的是:
------------对过程全力以赴,对结果淡然处之
也是对我自己讲的
相关文章:
【计算机基础知识】字符的编码表示
欢迎来到我的:世界 希望作者的文章对你有所帮助,有不足的地方还请指正,大家一起学习交流 ! 目录 前言1.西文字符编码2.中文字符编码汉字输入码汉字国标码汉字机内码汉字字形码 总结 前言 计算机处理的数据中,除了数值型数据以外…...
【面试题精讲】Java字符型常量和字符串常量的区别?
“ 有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top ” 首发博客地址[1] 面试题手册[2] 系列文章地址[3] Java 中的字符型常量和字符串常量是两种不同的数据类型。 字符型常量:字符型常量…...
【Vue面试题六】为什么Vue中的 v-if 和 v-for 不建议一起用?
文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:v-if和v-for的优先级是什…...
leetCode 674. 最长连续递增序列 动态规划 / 贪心策略
674. 最长连续递增序列 - 力扣(LeetCode) 给定一个未经排序的整数数组,找到最长且 连续递增的子序列,并返回该序列的长度。 连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每…...
数据中台实战(11)-数据中台的数据安全解决方案
0 微盟删库跑路 除了快、准和省,数据中台须安全,避免“微盟删库跑路”。 2020年2月23日19点,国内最大精准营销服务商微盟出现大面积系统故障,旗下300万商户线上业务全停,商铺后台所有数据被清。始作俑者是一位运维&a…...
林沛满-TCP之在途字节数
本文整理自:《Wireshark网络分析的艺术 第1版》 作者:林沛满 著 出版时间:2016-02 我一直谨记斯蒂芬霍金的金玉良言—每写一道数学公式就会失去一半读者。不过为了深度分析网络包,有时候是不得不计算的,好在小学一年级…...
HTTPS 加密工作过程
引言 HTTP 协议内容都是按照文本的方式明文传输的,这就导致在传输过程中出现一些被篡改的情况。例如臭名昭著的运营商劫持。显然, 明文传输是比较危险的事情,为此引入 HTTPS ,HTTPS 就是在 HTTP 的基础上进行了加密, 进一步的来保…...
校招秋招,性格和职业有关系吗?
企业在招聘应届毕业生时不再局限于普通的面试或者笔试,在互联网时代,为了能够更好的匹配需要的优质人才,企业会通过各种测试来提高招聘的准确率以及成功率。也许以前很多人都听说过性格和职业是有一定关系的,但是如何确定自己的性…...
网络和系统操作命令
目录 ping:用于检测网络是否通畅,以及网络时延情况。ipconfig:查看计算机的IP参数配置信息,如IP地址、默认网关、子网掩码等信息。netstat:显示协议统计信息和当前TCP/IP网络连接。tasklist:显示当前运行的…...
刷穿力扣(1~30)
更好的阅读体验 \huge{\color{red}{更好的阅读体验}} 更好的阅读体验 1. 两数之和 哈希表遍历数组,同时用 HashMap 维护已出现过的数及其下标若当前的数 nums[i] 满足 target - nums[i] 曾经出现过,则直接返回否则将其加入到哈希表中。 class Solution …...
栈和队列的基本操作
(一)实验类型:设计性 (二)实验目的: 1.掌握栈和队列的抽象数据类型。 2.掌握实现栈和队列的各种操作的算法。 3.理解栈与递归的关系。 4. 掌握队列的链式存贮结构及基…...
变压器绕组断股往往导致直流电阻不平衡率超标
变压器绕组断股往往导致直流电阻不平衡率超标, 例如, 某电厂 SFPSL—12000/220 型主变压器, 色谱分析结果发现总烃含量急剧增长, 测直流电阻, 其结果是高、 低压侧与制造厂及历年的数值相比较无异常, 但中压…...
stack和queque
1.stack 1.1定义 T 是容器内的数据类型; Container是数据类型的容器适配器 vector和list和stack的区别 1.2 stack的功能 注意这里没有迭代器;原因stack是先进后出的规律;这就规定该容器不可以随机访问; 2. queue...
信息学 学习/复习 抽签器(附源码)
问你一个问题,你考试前怎么复习呀? 效果图 以下是源代码,可自行修改 [C] #include<bits/stdc.h> #include<windows.h> using namespace std; vector<string>item; int main(void) {item.push_back("Manacher"…...
基于LADRC自抗扰控制的VSG三相逆变器预同步并网控制策略(Simulink仿真实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
[0xGame 2023] week1
整理一下,昨天该第二周了。今天应该9点结束提交,等我写完就到了。 PWN 找不到且不对劲的flag 第1题是个nc测试,但也不完全是,因为flag在隐含目录里 高端的syscall 程序使用了危险函数,并且没有canary阻止࿰…...
Matlab矩阵——矩阵行列互换
问题:如何将 1*n 的矩阵转换为指定 M*N 的矩阵,或者将 M*N 的矩阵转换为 1*n 的矩阵? 处理方法:使用 reshape 函数进行矩阵的行列互换 分两种情况如下: 一、将 1*n 的矩阵转换为指定 M*N 的矩阵 假如有4个坐标值&a…...
OpenMesh 网格面片随机赋色
文章目录 一、简介二、实现代码三、实现效果一、简介 OpenMesh中的赋色方式与Easy3D很是类似,它统一有一个属性数组来进行管理,我们在进行赋色等操作时,必须要首先添加该属性才能进行使用,这里也进行记录一下(法向量等特征也是类似的操作)。 二、实现代码 #define _USE_…...
SpringSecurity源码学习一:过滤器执行原理
目录 1. web过滤器Filter1.1 filter核心类1.2 GenericFilterBean1.3 DelegatingFilterProxy1.3.1 原理1.3.2 DelegatingFilterProxy源码 2. FilterChainProxy源码学习2.1 源码2.1.1 doFilterInternal方法源码2.1.1.1 getFilters()方法源码2.1.1.2 VirtualFilterChain方法源码 3…...
8.2 JUC - 4.Semaphore
目录 一、是什么?二、简单使用三、semaphore应用四、Semaphore原理 一、是什么? Semaphore:信号量,用来限制能同时访问共享资源的线程上限 二、简单使用 public class TestSemaphore {public static void main(String[] args) …...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...
DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...
HTML 列表、表格、表单
1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
【VLNs篇】07:NavRL—在动态环境中学习安全飞行
项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战,克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...
探索Selenium:自动化测试的神奇钥匙
目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...
相关类相关的可视化图像总结
目录 一、散点图 二、气泡图 三、相关图 四、热力图 五、二维密度图 六、多模态二维密度图 七、雷达图 八、桑基图 九、总结 一、散点图 特点 通过点的位置展示两个连续变量之间的关系,可直观判断线性相关、非线性相关或无相关关系,点的分布密…...
