日文编码 - 知乎专栏
文章推薦指數: 80 %
1 仅适用于双字节Shift JIS字符集日文编码模式只能编码字节位于0x8140至0x9FFC和0xE040至0xEBBF(十六进制)的双字节Shift JIS字符。
该集合中的字符可以在Rikai的Shift ...
首发于你今天真好看无障碍写文章登录/注册1仅适用于双字节ShiftJIS字符集日文编码模式只能编码字节位于0x8140至0x9FFC和0xE040至0xEBBF(十六进制)的双字节ShiftJIS字符。
该集合中的字符可以在Rikai的ShiftJISKanji字符索引表中找到。
2转为字节要在日文模式下编码双字节ShiftJIS字符,必须首先将字符转换为字节。
例如,字符茗荷可以转换如下:茗→0xE4AA荷→0x89D73编码日文模式有两种方法用于编码双字节日文字符。
一种方法用于字节在0x8140到0x9FFC范围内的字符,另一种方法用于字节的范围为0xE040到0xEBBF的字符。
这两种方法概述如下:3.1对于字节位于0x8140到0x9FFC范围内的字符上面的例子中,字符荷在ShiftJIS中是0x89D7,因此它在0x8140到0x9FFC范围内。
第一步是从十六进制值中减去0x8140。
在这个例子中:0x89D7-0x8140=0x0897结果是0x0897。
将该数字拆分为其最高有效字节及其最低有效字节:0x0897的最高有效字节是0x080x0897的最低有效字节是0x97接下来,将最高有效字节乘以0xC0,然后加上最低有效字节:(0x080xC0)+0x97=(0x600)+0x97=*0x697最后,将结果转换为13位二进制数字:0x697=00110100101113.2对于字节位于0xE040到0xEBBF范围内的字符上面的例子中,字符茗在ShiftJIS中是0xE4AA,因此它在0xE040到0xEBBF的范围内。
第一步是从十六进制值中减去0xC140。
在这个例子中:0xE4AA-0xC140=0x236A结果是0x236A。
将该数字拆分为其最高有效字节及其最低有效字节:0x236A的最高有效字节是0x230x236A的最低有效字节是0x6A接下来,将最高有效字节乘以0xC0,然后加上最低有效字节:(0x230xC0)+0x6A=(0x1A40)+0x6A=*0x1AAA最后,将结果转换为13位二进制数字:0x1AAA=11010101010104合并编码字节要编码的字符串是茗荷。
这两个字符在上述步骤中被转换成13位二进制。
将两个二进制字符串放在一起完成编码。
110101010101000110100101115增加指示符在第四步的结果前加上模式和字符计数指示符,最终结果为:10000000001011010101010100011010010111编辑于2017-02-2518:43二维码赞同23条评论分享喜欢收藏申请转载文章被以下专栏收录你今天真好看瞎扯,以及有趣的故事。
延伸文章資訊
- 1"編碼規則"日文- 日語翻譯 - 查查詞典
編碼規則日文翻譯:コーディングルール…,點擊查查權威綫上辭典詳細解釋編碼規則日文怎麽說,怎麽用日語翻譯編碼規則,編碼規則的日語例句用法和解釋。
- 2文字編碼雜談(2)
或許是因為日文環境在Unicode 之前曾經有兩套相對流行的DBCS 編碼的關係吧,這種亂碼現象在日文環境之內就已經很常見了,不需要到跨語言交換才會出現。
- 3[轉貼] 各種語系的unicode對應以及local編碼方式 - 聽打逐字稿
日文. Unicode範圍: 3040-30FF, 31F0-31FF(混用中文字碼) 備註:FF00-FFEF有半形日文,應轉至一般日文字碼處理 locale編碼: Shift-JIS, EU...
- 4常见字符编码格式 - 简书
介绍几种常见的编码中文编码1.GB2321:简体中文编码,一个汉字占用2个字节,在大陆是主要编码方式。当文章/网页中包含繁体中文、日文、韩文等等时, ...
- 5日文是什么编码 - 百度知道
Shift JIS Shift_JIS是一个日本电脑系统常用的编码表。它能容纳全角及半角拉丁字母、平假名、片假名、符号及日语汉字。 它被命名为Shift_JIS的原因,是它在放置全角 ...