JIS X 0201 , японский промышленный стандарт, разработанный в 1969 году, был первым японским набором электронных символов, получившим широкое распространение. Набор символов первоначально был известен как JIS C 6220 до реформы категории JIS. Двумя его формами были 7-битная кодировка или 8-битная кодировка, хотя 8-битная форма доминировала до тех пор, пока ее не заменил Unicode (в частности, UTF-8 ). Полное название этого стандарта — 7-битные и 8-битные кодированные наборы символов для обмена информацией ( 7ビット及び8ビットの情報交換用符号化文字集合).
Первые 96 кодов представляют собой вариант ISO 646 , в основном следующий ASCII с некоторыми отличиями, а вторые 96 кодов символов представляют собой фонетические японские знаки катаканы . Поскольку кодировка не обеспечивает никакого способа выражения хираганы или кандзи , она способна выражать только упрощенный письменный японский язык. Тем не менее, это упрощение может представить весь спектр звуков языка. В 1970-х годах это было приемлемо для таких носителей, как компьютерные терминалы с текстовым режимом, телеграммы, квитанции или другие данные, обрабатываемые в электронном виде.
JIS X 0201 был вытеснен последующими кодировками, такими как Shift JIS , которая объединяет этот стандарт и JIS X 0208 , а позже и Unicode .
Международный консультативный комитет по телефонии и телеграфии (CCITT) представил код Международного телеграфного алфавита № 2 (ITA2) в качестве международного стандарта, который представлял собой 5-битную латинскую кодировку. Большинство стран имеют свои собственные национальные стандарты, основанные на этом. В Японии Агентство промышленной науки и технологий (AIST) стандартизировало его как 6-битные коды символов JIS C 0803-1961 ( Раскладка клавиатуры и коды для телетайпов ), которые сочетались с символами катаканы. Однако он не соответствовал отраслевым требованиям, поскольку карта символов была маленькой, а расположение кода — непрактичным. AIST рассмотрел практическую кодировку символов, которая заменит различные коды, используемые в Японии. [1]
В 1963 году ISO представила проект ISO R 646 ( 6- и 7-битные кодированные наборы символов для обмена информацией при обработке ). AIST поручила объединение ISO R 646 и картографирования катаканы Японскому обществу обработки информации (IPSJ). IPSJ сформировал комитет по стандартизации кодов. Комитет не принял 6-битную форму проекта ISO, поскольку набор катаканы не вписывался в его карту символов. В раннем проекте JIS маленькие символы катаканы отображались рядом с каждым из их обычных символов катаканы. Было сочтено удобным сортировать по порядку Годзюон (JIS X 0208:1978 выбрал этот порядок). Некоторые члены комитета раскритиковали, что это усложнит механику клавиатур, которые обрабатывают только обычные символы катаканы. В более позднем проекте маленькие символы катаканы были сопоставлены с позициями 0xA7-0xAF.
В проекте ISO 1964 года позиции 0x24 и 0x5c были зарезервированы для первого и второго символов валюты, которые должны были назначаться каждой страной, но в международных коммуникациях считалось слишком опасным использовать символы валют, которые можно было локализовать. У комитета ISO было два варианта: использовать общий символ валюты (¤) или присвоить знакам доллара ($) и фунта (£) постоянные назначения. Было решено, что знак доллара будет присвоен позиции 0x24, а знак фунта — позиции 0x23. Последнее не требовалось в странах, которым не нужен знак фунта. [2] Комитет JIS решил поместить знак иены (¥) в 0x5c (одна из позиций национального использования).
JIS C 6220 ( Коды для обмена информацией , 情報交換用符号) был опубликован в 1969 году. Его номер был изменен на JIS X 0201 в связи с реформой категории JIS в 1987 году, а название было изменено на 7-битное и 8-битное кодирование. наборы символов для обмена информацией (7ビット及び8ビットの情報交換用符号化文字集合) в издании 1990 года.
Набор символов JIS X 0201 широко использовался в Японии. Национальная система передачи банковских данных (全国銀行データ通信システム), крупнейшая система денежных переводов в Японии, была создана в 1973 году. В сообщениях о транзакциях между банками использовалось подмножество JIS X 0201. Система использовалась до 2018 года, а затем была заменена. ZEDI (Национальная банковская система электронного обмена данными, 全銀EDIシステム), которая могла обрабатывать символы хираганы и кандзи. [3] В 1978 году был разработан 2-байтовый набор символов JIS C 6226 ( JIS X 0208 ) для выражения символов хираганы и кандзи. Он включает символы катаканы, но их коды и расположение отличаются от JIS X 0201. Производители компьютеров разработали свои собственные расширения JIS X 0208, чтобы сохранить совместимость с JIS X 0201. В 1982 году была разработана схема кодирования Microsoft Kanji ( кодовая страница 932 MS -DOS). ) и SJC26 компании Digital Research (для японского CP/M-86 ) были разработаны для объединения однобайтовой кодировки JIS X 0201 и двухбайтовой кодировки JIS X 0208 без сдвига и сдвига символов. [4] Они назывались Shift JIS и стали промышленным стандартом для персональных компьютеров.
Первая половина (римский набор) JIS X 0201 представляет собой японский вариант ISO 646 , представляющий собой ASCII с обратной косой чертой (\) и тильдой (~), замененной на иену (¥) и надчеркиванием (‾), [5] , а вторая половина половина (набор кана) состоит в основном из катаканы . Управляющие символы указаны в JIS X 0211 .
В 7-битном формате управляющий символ смещения (0x0E) переключается на набор кана, а входной символ (0x0F) переключается на римский набор. [6] [7] В 8-битном формате, приведенном в таблице ниже, байты с установленным старшим битом (т. е. 0x80–0xFF) используются для набора Кана, а байты с неустановленным им битом (т. е. 0x00–0x7F) используется иначе.
Имена, используемые специально для 7-битного набора римских символов, включают «JISCII», [8] «JIS Roman», [9] «ISO646-JP», [10] [11] «JIS C6220-1969-ro», [11] [10] «Японско-римский», [12] «Японская 7-битная латиница», [13] и «ISO-IR-14», [10] [11] [7] тогда как имена используются специально для 7-битной версии. В комплект Kana входят «ISO-IR-13», [6] [10] [11] «JIS C6220-1969-jp» [10] [11] и «x0201-7». [10] [11]
Замена символа иены на обратную косую черту может привести к странному отображению путей на компьютерах под управлением DOS и Windows с поддержкой японского языка, например, «C:¥Program Files¥». [14] Другая похожая проблема — это управляющие символы языка программирования C для строковых литералов , например printf("Hello, world.¥n");
.
В следующей таблице представлен исходный 8-битный набор символов JIS X 0201 (набор кана обозначен байтами с установленным старшим битом). [15] [16]
Ниже приводится сопоставление, используемое для JIS X 0201 как часть Shift JIS , [17] [18], т.е. показывает 8-битную форму JIS X 0201 и отображает символы катаканы в блок форм половинной и полной ширины (который, в свою очередь, выводит его макет кана половинной ширины из JIS X 0201).
Базовый профиль ISO-2022-JP не допускает использования набора Kana JIS X 0201, только латинского набора и JIS X 0208 (хотя сам ISO 2022 / JIS X 0202 разрешает это). Соответственно, при преобразовании катаканы JIS X 0201 (или каны половинной ширины Unicode , использующей ту же раскладку) в ISO-2022-JP, часто используется следующее сопоставление или преобразование. [20] Это позволяет конвертировать кану в JIS X 0208.
Теоретически это сопоставление одинаково правильно, поскольку сам JIS X 0201 не определяет ширину дисплея, хотя на практике (и особенно в двупространственных средах) JIS X 0201 используется для катаканы половинной ширины.
Для простоты сравнения с приведенной выше таблицей ниже показано сопоставление с кодировкой катаканы JIS X 0201 и с установленным старшим битом.
Кодовая страница 897 представляет собойреализацию 8-битной формы JIS X 0201 от IBM. Она включает в себя несколько дополнительных графических символов в области управляющих символов C0 , а рассматриваемые кодовые точки могут использоваться как управляющие символы или графические символы в зависимости от context, [23] по концепции аналогично OEM-US , но с другими графическими символами. Строки C0 показаны ниже. IBM также обозначает чистый 8-битный JIS X 0201 без этих замен управляющего кода как кодовую страницу 1139 . [24] Другой вариант, включающий меньшее подмножество заменяющей графики C0 (включая только символы рисования прямоугольников в 0x01–06, 0x11, 0x15–17 и 0x19, а также символы линий/стрелок в 0x1B–1F), но с использованием другого стиль стрелки вверх ( U+21E7 ⇧ ) по адресу 0x1C обозначается кодовая страница 1086 . [25]
IBM также реализует 7-битный латинский набор JIS X 0201 в качестве кодовой страницы 895 [31] и 7-битный набор Kana в качестве кодовой страницы 896 для использования в качестве кодовых наборов ISO 2022 или EUC-JP . Кодовая страница 896, помимо стандартных назначений JIS X 0201, определяет пять дополнительных назначений, показанных ниже. [32] Хотя использование этих расширенных символов не разрешено соответствующим CCSID 896, [33] они разрешены альтернативным CCSID 4992. [34]
Кодовая страница IBM 1041 представляет собой расширенную версию кодовой страницы 897, в которой эти пять расширенных символов IBM [35] кодируются в альтернативных местах, совместимых с Shift JIS (соответственно 0x80, 0xA0, 0xFD, 0xFE и 0xFF). [36] Кодовая страница 911 , другая расширенная 8-битная реализация JIS X 0201 (которая использует ту же графику замены C0, что и кодовая страница 1086), кодирует знак фунта (стерлинга) ( £ ) в 0xE1, аналогично кодовой странице 896 с восьмеркой. бит установлен, но отличается кодированием знака цента ( ¢ ) в 0xE2 и знака отсутствия ( ¬ ) в 0xE3. [37]
Кодовая страница IBM 903 закодирована для использования в качестве однобайтового компонента некоторых упрощенных китайских кодировок символов, [38] сопровождая кодовую страницу 904 на основе ASCII , используемую с традиционными китайскими кодировками. [39] [40] Несмотря на это, кодовая страница 903 соответствует ISO 646-JP / римской половине JIS X 0201, поскольку она заменяет обратную косую черту ASCII 0x5C (а не знак доллара ASCII 0x24, как в GB 1988 / ISO 646-). CN ) со знаком иена/юань . Он также использует ту же графику замены C0, что и кодовая страница 897. [41] Кодовая страница 1042 расширяет кодовую страницу 903 знаком фунта (стерлинга) в 0x80, а также знаками отсутствия знака, обратной косой чертой и тильдой в местах кодовой страницы 1041. [42]