内码与国标码的转换

1. 区位码到国标码的转换 :
将区号和位号分别转换成十六进制数表示。
将区号和位号分别加上偏移量`2020H`,得到对应的国标码。
2. 国标码到内码的转换 :
将国标码转换成二进制数表示。
在二进制数表示前面添加一个`1`作为高位,后面添加两个`0`作为低位。
将得到的结果转换成十六进制数表示,即为对应的内码。
举例说明,以汉字“大”为例,其区位码为`2083`:
1. 区位码到国标码 :
区号`20`转换为十六进制为`14`,位号`83`转换为十六进制为`53`。
加上偏移量`2020H`,得到国标码`1453H + 2020H = 3473H`。
2. 国标码到内码 :
国标码`3473H`转换为二进制为`0011 0100 0111 0001`。
在前面添加`1`作为高位,后面添加两个`0`作为低位,得到`1001 1010 0011 1000 1`。
转换成十六进制为`B4F3H`,即为对应的内码。
需要注意的是,在进行区位码到国标码的转换时,如果区号或位号的十进制数超过`9999`,需要进行适当的调整,以保证转换后的国标码不超出`8`位二进制数的范围。
其他小伙伴的相似问题:
内码与国标码的转换公式是什么?
如何将国标码5e38h转换内码?
汉字机内码转换为国标码的方法?



