ISO/CEI 2022

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

ISO 2022, ou plus formellement ISO/CEI 2022 (ICS no 35.040), est une norme ISO spécifiant une technique pour inclure de multiples jeux de caractères (cyrillique, chinois, diacritique de l'alphabet latin...etc...) dans un seul codage de caractères.

L'ISO-2022 est équivalent de l'ECMA 35[1].

Elle traite de Structure de code de caractère et techniques d'extension; son appellation anglophone est Information technology—Character code structure and extension techniques.

À la différence du codage de caractères ISO 8859 qui utilise 8 bits pour tous les caractères, les codages ISO 2022 sont de tailles variables en utilisant typiquement 8 ou 16 bits par caractère. Un grand nombre de codages de caractères utilise les mécanismes spécifiés dans l'ISO 2022. Par exemple, l'ISO-2022-JP est largement utilisé comme codage de caractères pour le japonais.

Elle permet de présenter des textes comme 「日本語版Wikipedia」.

Introduction[modifier | modifier le code]

Beaucoup de langues ou de famille de langues ne sont pas basées sur l'alphabet latin telles que le grec, russe, l'arabe, ou l'hébreu, qui historiquement étaient représentées sur les ordinateurs avec un jeu de caractères ASCII étendu de 8 bit et incluant la famille du jeu de caractères de l'ISO 8859. Les langues écrites de l'Asie de l'Est, et spécifiquement, le chinois, le japonais et le coréen, utilisent nettement plus de caractères que ne peut contenir un octet. C'est pourquoi, afin de représenter ces multiples caractères, on a tout d'abord utilisé un codage spécifique composé de deux octets.

L'ISO 2022 avait développé une technique pour représenter les caractères de multiples systèmes de caractères à travers un unique système de codage. Les caractères ISO 2022 incorporent des séquences d'échappement qui indiquent le jeu à utiliser pour le caractère qui suit. Les séquences d'échappement sont enregistrées dans l'ISO et sont souvent codées par une chaîne de trois caractères utilisant le caractère ASCII ECHAP (hexadécimal : 1B, octal : 33). Ces codages de caractères requièrent que les données soient exécutées séquentiellement afin de parvenir à une interprétation correcte des diverses séquences d'échappement.

Même si le jeu de caractères ISO 2022, et particulièrement, ISO-2022-JP, est encore énormément utilisé, les logiciels modernes utilisent aujourd'hui des codages de caractères de type Unicode tel que l'UTF-8.

Jeux de caractères ISO 2022[modifier | modifier le code]

Séquences d'échappement[modifier | modifier le code]

Les codages de caractères utilisant les mécanismes ISO 2022 incluent :

  • ISO-2022-JP - largement utilisé dans le codage du japonais. Commence par des caractères ASCII et inclut les séquences d'échappements suivantes :
    • ESC ( B pour utiliser le code ASCII (1 octet par caractère)
    • ESC ( J pour utiliser le codage JIS X 0201-1976 (1 octet par caractère)
    • ESC $ @ pour utiliser le codage JIS X 0208-1978 (2 octets par caractère)
    • ESC $ B pour utiliser le codage JIS X 0208-1983 (2 octets par caractère)
  • ISO-2022-JP-1 - Identique à ISO-2022-JP avec une séquence d'échappement supplémentaire :
    • ESC $ ( D pour utiliser le codage JIS X 0212-1990 (2 octets par caractère)
  • ISO-2022-JP-2 - Extension multilingue de l'ISO-2022-JP. Identique à l'ISO-2022-JP-1 avec les séquences d'échappement supplémentaires suivantes :
    • ESC $ A pour utiliser le codage GB2312-1980 (2 octets par caractère)
    • ESC $ ( C pour utiliser le codage KSC5601-1987 (2 octets par caractère)
    • ESC . À pour utiliser le codage ISO 8859-1 (1 octet par caractère)
    • ESC . B pour utiliser le codage ISO 8859-7 (1 octet par caractère)
  • ISO-2022-JP-3 - japonais
  • ISO-2022-KR - coréen
  • ISO-2022-CN - chinois
  • ISO-2022-CN-EXT - chinois

Dates et versions[modifier | modifier le code]

#表1に、各版ごとの規格番号、制定日などを示す。

Modèle:Visible anchor ISO/IEC 2022 の各版ごとの規格番号・制定日等
Version Référence ISO date ISO Référence JIS date JIS
1 ISO 2022:1973 Promulgué le 1973年5月 JIS C 6228:1975 Promulgué le 1975年3月1日
2 ISO 2022:1982 1982年12月 JIS C 6228:1984※ 1984年11月1日
3 ISO 2022:1986 1986年5月 JIS X 0202:1991 1991年1月1日
4 ISO/IEC 2022:1994 1994年12月 JIS X 0202:1998 1998年1月20日
※ Le 1987年3月1日, cette révision a été renommée JIS X 0202:1984.

Structure des octets[modifier | modifier le code]

Structure de la table de code de 1 ISO / CEI 2022 chiffre
(a) 7 bits
 fort

faible 
00 01 02 03 04 05 06 07 08 09
00 [b]
01
02
03
04
05
06
07 C0 GL C1[d]
08
09
10
11 [a]
12
13
14
15 [c]
(b) 8 bits
 fort

faible 
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15
00 [b] [e]
01
02
03
04
05
06
07 C0 GL C1 GR
08
09
10
11 [a]
12
13
14
15 [c] [e]

Créé sur la base du JIS X 0202:1998.

Notation: La position dans la table de caractère est indiquée par le numéro de colonne, puis par le numéro de ligne. 01/11 (ESCAPE) est une valeur hexadécimale correspondant à 1B, par exemple.

a  ESCAPE est toujours un caractère de contrôle. b  Avec un jeu de 94 caractères, c'est un SPACE (espace). c  Avec un jeu de 94 caractères, c'est un caractère de contrôle DELETE. d  dans le code 7-bit, les caractères de contrôle C1 ne s'utilisent pas réellement. Alternative représentés par des séquences d'échappement. e  Avec un jeu de 94 caractères, les deux codes concernés de la matrices GR ne s'utilisent pas.

Exemple en ISO 2022 JP[modifier | modifier le code]

À titre d'exemple, la table '[3] ci-dessous décrit le codage de la chaîne 「日本語版Wikipedia」 (Wikipedia version japonaise) dans avec la convention ISO-2022-JP.

La première ligne indique chaque caractère. La ligne intermédiaire indique le numéro associé à chaque caractère ou le changement de codage. La dernière ligne indique chaque octet, sous forme ASCII en bas, et hexadécimal codé décimal en partie supérieure.

Illustration: 「日本語版Wikipedia」en ISO-2022-JP
Caractère représenté W i k i p e d i a
機能
区点
行列
JIS X 0208
を指示
38-92 43-60 24-76 40-39 ASCII
を指示
05/07 06/09 06/11 06/09 07/00 06/05 06/04 06/09 06/01
octet 01/11 02/04 04/02 04/06 07/12 04/11 05/12 03/08 06/12 04/08 04/07 01/11 02/08 04/02 05/07 06/09 06/11 06/09 07/00 06/05 06/04 06/09 06/01
ESC $ B F | K \ 8 l H G ESC ( B W i k i p e d i a

Note[modifier | modifier le code]

Il se peut que la première séquence d'échappement ne soit pas nécessaire lorsque le texte commence par l'un des 96 caractères du standard américain (ascii).

Références[modifier | modifier le code]

  1. http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-035.pdf Character Code Structure and Extension Techniques 1971. Three further editions in 1980, 1982 and 1985, Décembre 1994

Voir aussi[modifier | modifier le code]

Liens externes[modifier | modifier le code]

Articles connexes[modifier | modifier le code]