操作系统、输入法和编码的理解

本文介绍了操作系统如何管理输入法,以及应用程序如何与输入法交互。深入探讨字符集和编码的区别,包括ASCII、Unicode以及各种UTF编码。还讨论了输入法的工作原理,并指出解析文件时编码错误的不可逆性及其影响。
摘要由CSDN通过智能技术生成

操作系统和输入法

操作系统有一个输入法管理器,叫做IMM,管理系统内的所有输入法,或者说一个输入法想要使用操作系统提供的输入法API,就必须在IMM进行注册。

应用程序和输入法

应用程序一般都会使用输入法,也就是调用输入法的api进行文字输入。比如你想要使用文本编辑器txt保存“我爱你”三个字,那么打开txt的时候,txt会通过操作系统来调用某个输入法,具体调用哪个输入法取决于当前系统和用户设置。

字符集和编码

字符集和编码很容易混淆。其实是有区别的。
字符集的概念:顾名思义,就是字符的集合,并且每个字符都存在一个编号,编号也称为码点,字符集有时称为码表。比如ASCII字符集包含了128个字符。字符”空格“在ASCII中为第一个字符,因此它的ASCII编号为0,字符”1“为第49个字符,因此”1“的编号为49。同理Unicode也是一个字符集,包含了世界上所有的字符,并且每一个字符都有对应的编号。中文 ‘中’字,在Unicode字符集中为第20013(十进制)个字符,因此编号为20013(十进制),十六进制为4E2D

编码:只有当涉及到存储或者传输的概念时,才涉及到编码,计算机内存中处理数据一般使用编号。什么是编码呢,举个例子,想要在计算机上保存字符”1“,就必须存储它的编号49,49的二进制为110001,一共是6位二进制数,但是计算机按只能按字节来存,那么保存49就得使用八个二进制位,显而易见的方式是在前面补充0,既00110001,这个00110001也

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值