|||
前面博文中有一个很少用的符号,万分之一符(‱),接触基点这个概念之前, 我从来没有见过,更没用过.
既然网页上都能显示出来, 我想它肯定在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标准还定义了百万分之一的符号.一般我们输入时常用三个字母构成的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中还定义了很多稀奇古怪的符号,PPM所在的附近就有不少, 比如微伏、毫伏、千伏,纳法、微法、皮法等等,有兴趣的可以研究一下,33D9位正是㏙符号。
连日历的每一天、一天的每一个小时都做成符号了,真是:
用好Unicode,什么符号都不怕!
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-23 20:01
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社