インクジェットプリンターのKGK紀州技研工業
 
会社案内採用情報サイトマップお問い合わせ窓口
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
HOME > 豆知識 > バーコードの話 > より詳しい文字コードの話
  • 1.はじめに
  • 2.ASCIIコード
  • 3.JISコード
  • 4.シフトJISコード
  • 5.EUCコード
  • 6.ユニコード
  • 7.部首について
  • 8.中国語のコード
  • 9.GB2312コード
  • 10.簡体字の世界
  • 11.ピンインについて
  • 12.文字コード検索
  • 13.文字コード変換
  • 14.IJP搭載の文字コード
  • 15.IJP搭載のフォント
より詳しい文字コードの話

インクジェットプリンターのKGK紀州技研工業 『より詳しい文字コードの話』


シフトJISコード

 シフトJISコードはパソコンの日本語コードとして普及しています。
文字どおりJISコード(JIS X208)を 1バイトコード(JIS X201)に重ならないようにシフトしたものです。
まず、JISコードの第一バイトをJIS X201で使われていない領域にシフトします。(0x80〜0x9F、0xE0〜0xFF)
つぎに第二バイトも0x40〜0xFCにシフトします。(0x7Fは避けてシフトします。)
シフトの計算は以下のようになっています。

第一バイト
区分 JISコード(A) 計算式 シフトJISコード
全区 0x21〜0x5E (A+1)/2+0x70 0x81〜0x9F
0x5F〜0x7E (A+1)/2+0xB0 0xE0〜0xEF
第二バイト
区分 JISコード(B) 計算式 シフトJISコード
奇数区 0x21〜0x5F B+0x1F 0x40〜0x7E
0x60〜0x7E B+0x20 0x80〜0x9E
偶数区 0x21〜0x7E B+0x7E 0x9F〜0xFC

第一バイト

 ASCII領域とJISコードの第一バイトが重なるため、ASCII、半角カナのいずれとも重ならない 0x80〜0x9F、0xE0〜0xEFに第一バイトを移動させます。
 「JIS領域1」のコードは「シフトJIS領域1」へ、「JIS領域2」のコードは「シフトJIS領域2」へ、 それぞれ移動します。

  0 1 2 3 4 5 6 7 8 9 A B C D E F
0 ASCII
領域
      シ
フ
ト
JIS
領
域
1
半
角
カ
ナ
シ
フ
ト
JIS
領
域
2
未
定
義
1 JIS
領
域
1
JIS
領
域
2
2
3
4
5
6
7
8
9
A
B
C
D
E
F        

第二バイト

 隣り合う奇数区と偶数区が同じ第一バイトを共有するため、第二バイトは 94×2=188の領域を使用します。
制御コードの領域を避けるため、0x40〜0x7E、0x80〜0xFCにシフトします。(奇数区は0x40〜0x7E,0x80〜0x9E、偶数区は0x9F〜0xFC)
 ASCIIと重複するコードを含むため、処理には注意する必要があります。

  0 1 2 3 4 5 6 7 8 9 A B C D E F
0 ASCII領域 奇数区       偶数区  
1
2
3
4
5
6
7
8
9
A
B
C
D  
E  
F        

 このコードの特徴は以下のとおりです。

  • ASCIIや半角カナを含むJIS X201と共存できる。
  • コード切り換えのためのエスケープシーケンスが必要でない。
  • 0x80〜0x9F、0xE0〜0xEFのコードは2バイト文字の第一バイトなので、次のバイトとあわせて 1文字として処理する。
  • 第二バイトは他のコードと重複するため、注意が必要。
  • シフトJISコード表

前へ もっと詳しい文字コードメニューへ 次へ
リンク サイトマップ 個人情報保護方針
和歌山の歴史と文化 海南テクニカルセンターの四季 紀州おどり
〒641-0015 和歌山市布引466番地 紀州技研工業株式会社 (KGK)
TEL:073-445-6610 FAX:073-448-2005
mail : kgk1@kishugiken.co.jp

COPYRIGHT(C) KISHU GIKEN KOGYO CO.,LTD.