丁祥欢
万分之一符号, 千分之一符号 和PPM符号
2020-9-3 16:16
阅读:11449
标签:Unicode, 符号, UTF-8编码, 特殊符号, Unicode

前面博文中有一个很少用的符号,万分之一符(‱),接触基点这个概念之前, 我从来没有见过,更没用过.

既然网页上都能显示出来, 我想它肯定在Unicode编码体系中有自己的编码. 为了查证一下,做了点测试如下:

1)将上面的‱复制到UltraEdit中,切换到十六进制模式查看,得到E2 80 B1. 这是一个UTF8编码. 

2)UTF-8 → Unicode


 生成方法: 根据之前的博文(UTF-8的编码方法), E2 80 B1是三字节的编码, 三字节是编码是这样的.

 将16位的Unicode码值 xxxxxxxx  xxxxxxxx 拆分成24位的如下结构,拆开后填充1110 、10 和10得到1110xxxx 10xxxxxx 10xxxxxx


还原方法: 

 第1步:UTF-8编码还原成Unicode码值, 将E2 80 B1转换为二进制值

11100010 10000000 10110001

第2步: 去除上述粗体的1和0, 得到16位的二进制值, 从前到后8位一个字节处理如下:

00100000 00110001

第3步: 再转换为十六进制为20 31,这就是万分之一符号的Unicode码值.


3)验证方法:

为了验证一下,在Word中新建一个文档,输入2031, 再按一下Alt+X, 出来一个字符,看起来不太清楚, 放大到72号字体一看,就是它!


顺便说一下,在Unicode编码中,千分之一符号的码值是2030,就是万分之一符号的前面. 

我们看一看Unicode标准中对它们是怎么解释的:

Unicode中的解释.png


Unicode标准还定义了百万分之一的符号.一般我们输入时常用三个字母构成的PPM符号, 但实际上还有单个字符的符号㏙--它是一个独立的符号.

由于在Word中比较容易找到这个符号,我先在Word中插入这个符号,复制到UltraEdit中查看十六进制的UTF-8编码, 如法炮制记录如下:

(UTF-8编码)E3 8F 99 → (Hex) 11100011 10001111 10011001 →(去除前缀, 再从到右8位一段进行处理) 00110011 11011001 →(Hex) 33 D9

在Word中输入33D9,按Alt+X就出来这个符号.

以下就是这几个特殊符号.

几个特殊符号(Unicode 2031,2030,33D9).png

其实Unicode中还定义了很多稀奇古怪的符号,PPM所在的附近就有不少, 比如微伏、毫伏、千伏,纳法、微法、皮法等等,有兴趣的可以研究一下,33D9位正是㏙符号。

有些有趣的特殊符号.png

连日历的每一天、一天的每一个小时都做成符号了,真是:

用好Unicode,什么符号都不怕!

转载本文请联系原作者获取授权,同时请注明本文来自丁祥欢科学网博客。

链接地址:https://wap.sciencenet.cn/blog-1213210-1249140.html?mobile=1

收藏

分享到:

当前推荐数:0
推荐到博客首页
网友评论0 条评论
确定删除指定的回复吗?
确定删除本博文吗?