QR码编码原理三(日本汉字和中文编码)
2013-04-08 22:52
344 查看
一、日本汉字(KANJI)是两个字节表示的字符码,编码的方式是将其转换为13字节的二进制码制。
转换步骤为:
1、对于JIS值为8140(hex) 到9FFC(hex)之间字符:
a)将待转换的JIS值减去8140(hex);
b)将高位字节乘以C0(hex);
c)将b)步骤生成的数据加上低位字节;
d)将结果转换为13位二进制串。
2、对于JIS值为E040(hex)到EBBF(hex)之间的字符:
a)将待转换的JIS值减去C140(hex);
b)将高位字节乘以C0(hex);
c)将b)步骤生成的数据加上低位字节;
d)将结果转换为13位二进制串。
二、中文汉字的与日文汉字转换步骤相似:
1、对于第一字节为0xA1~0xAA之间,第二字节在0xA1~0xFE之间字符:
a)第一字节减去0xA1;
b)上一步结果乘以0x60;
c)第二字节减去0xA1;
d)将b)步骤的结果加上c步骤的结果;
e)将结果转换为13位二进制串。
1、对于第一字节为0xB0~0xFA之间,第二字节在0xA1~0xFE之间字符:
a)第一字节减去0xA6;
b)上一步结果乘以0x60;
c)第二字节减去0xA1;
d)将b)步骤的结果加上c步骤的结果;
e)将结果转换为13位二进制串。
转换步骤为:
1、对于JIS值为8140(hex) 到9FFC(hex)之间字符:
a)将待转换的JIS值减去8140(hex);
b)将高位字节乘以C0(hex);
c)将b)步骤生成的数据加上低位字节;
d)将结果转换为13位二进制串。
2、对于JIS值为E040(hex)到EBBF(hex)之间的字符:
a)将待转换的JIS值减去C140(hex);
b)将高位字节乘以C0(hex);
c)将b)步骤生成的数据加上低位字节;
d)将结果转换为13位二进制串。
二、中文汉字的与日文汉字转换步骤相似:
1、对于第一字节为0xA1~0xAA之间,第二字节在0xA1~0xFE之间字符:
a)第一字节减去0xA1;
b)上一步结果乘以0x60;
c)第二字节减去0xA1;
d)将b)步骤的结果加上c步骤的结果;
e)将结果转换为13位二进制串。
1、对于第一字节为0xB0~0xFA之间,第二字节在0xA1~0xFE之间字符:
a)第一字节减去0xA6;
b)上一步结果乘以0x60;
c)第二字节减去0xA1;
d)将b)步骤的结果加上c步骤的结果;
e)将结果转换为13位二进制串。
相关文章推荐
- QR码编码原理三(日本汉字和中文编码)
- QR码编码原理三(日本汉字和中文编码)
- QR码编码原理三(日本汉字和中文编码)
- 二维码原理之QR码编码原理三(日本汉字和中文编码)
- QR码编码原理三(日本汉字和中文编码)
- Linux ubuntu下python处理中文(汉字及标点)的编码设置
- 根据Unicode编码完美的判断中文汉字和符号
- Foundation+Log.m,让网络请求回来的中文被unicode编码的数据汉字显示
- UTF-8编码下'\u7528\u6237'转换为中文汉字'用户'
- JDBC读取Oracle的US7ASCII编码中文乱码及不同编码下汉字占用字节的问题
- JDBC读取Oracle的US7ASCII编码中文乱码及不同编码下汉字占用字节的问题
- 用delphi生成GBK 中文编码 表(4~5) GBK/4~5: 0xAA40~0xFEA0(部分) 扩充汉字 包括繁体 0xA
- 英文字母和中文汉字在不同字符集编码下的字节数
- uiautomator在UTF-8的编码方式下如何匹配英文和中文包括汉字
- ******英文字母和中文汉字在不同字符集编码下的字节数 英文字母:******
- MySQL5.0中文问题及JSP汉字编码问题解决方法
- 中文汉字编码技术的探索、突破与拓展
- 英文字母和中文汉字在不同字符集编码下的字节数
- 英文字母和中文汉字在不同字符集编码下的字节数
- python2.7:中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。