Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. ISO/CEI 10646 — Wikipédia
ISO/CEI 10646 — Wikipédia 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.
(Redirigé depuis UCS2)
Page d’aide sur l’homonymie

Pour les articles homonymes, voir JUC.

ISO-10646
Famille ISO-10646
Langues Toutes les langues vivantes
Nombre de caractères plusieurs dizaines de milliers
État du projet normalisé
Plates-formes Unix/Linux/Windows/Mac/...
Organisme /
Parrainage
ISO et CEI
Numéro d'enregistrement 10646
Séquences d'échappement Non nécessaires, existence d'un indicateur: le Byte Order Mark
Unité de codage (codet) Indépendant
Première version ISO 10646-1 (1993)[1]
Site web ISO/IEC 10646:2020
modifier 

La norme ISO/CEI 10646, intitulée Technologies de l'information — Jeu universel de caractères codés (JUC), tente de définir un système de codage universel pour tous les systèmes d’écriture. Cette norme est le fondement du standard Unicode.

Description

[modifier | modifier le code]

La norme internationale ISO/CEI 10646 définit le jeu universel de caractères (JUC), en anglais Universal Character Set (UCS) comme un jeu de caractères abstrait. Chaque caractère abstrait est identifié par un nom unique (un en anglais et un en français) et associé à un nombre entier positif appelé son point de code (ou position de code).

Environ 110 000 caractères (symboles, lettres, nombres, idéogrammes, logogrammes) issus de langues, systèmes d’écriture, traditions du monde entier sont recensés dans le JUC. De nouveaux caractères provenant d’écritures plus rares ou plus anciennes, ou encore de systèmes nouveaux, sont fréquemment ajoutés ou mis à jour dans le JUC.

Depuis 1991, le Consortium Unicode collabore avec l’ISO pour développer le Standard Unicode (« Unicode ») et la norme ISO/CEI 10646. Les répertoires, noms de caractères, et points de code de la Version 2.0 d’Unicode correspondent exactement à ceux de la norme ISO/CEI 10646-1:1993[2] avec ses sept premiers amendements publiés. Chaque publication d’une nouvelle version d’Unicode donne ensuite lieu à une mise à jour de la norme, c’est-à-dire l’adjonction de nouveaux caractères et la mise à jour de ceux déjà présents. Par exemple, la publication d’Unicode 3.0 en février 2000 correspond à la norme ISO/CEI 10646-1:2000. Voir la section Relation avec Unicode pour plus de détails.

Le JUC comprend plus d’1,1 million de points de code, mais seuls les 65 536 premiers (le Plan Multilingue de Base, ou PMB) ont été vulgarisés avant 2000. Cette situation commença à changer quand la Chine populaire (RPC) légiféra en 2000 que les systèmes informatiques vendus sur son territoire devaient reconnaître le GB 18030, ce qui nécessitait que les systèmes informatiques mis à la vente dans la RPC utilisent des caractères au-delà du PMB.

Le système laisse délibérément beaucoup de points de code non assignés à des caractères, même dans le PMB. Cela permet de ménager des extensions futures ou de minimiser les conflits avec d’autres codages.

Formes de codage du jeu universel de caractères codés

[modifier | modifier le code]

ISO/CEI 10646 définit plusieurs formes de codage de caractères pour le jeu universel de caractères codés. La plus simple, UCS-2, qui a été supprimé dans la version 2011, assigne une valeur de code unique, c’est-à-dire un nombre unique, entre 0 et 65 535 pour chaque caractère. Ainsi, exactement deux octets, soit un mot de 16 bits, permettent de représenter la valeur de tout point de code du plan multilingue de base (PMB), à la condition que le point de code soit assigné, c’est-à-dire qu’il représente effectivement un caractère. Cette forme de codage est obsolète car elle ne permet pas de représenter les points de code extérieurs au PMB.

Le premier amendement de l’édition originale d’ISO/CEI 10646 définit UTF-16, une extension d’UCS-2, pour représenter les points de code extérieurs au PMB, reprise ensuite par Unicode. Il existe dans le PMB une plage appelée zone d’indirection dont les points de code ne sont pas assignés à des caractères. UCS-2 interdit l’utilisation de valeurs de code pour ces points de code, mais UTF-16 permet leur utilisation par paires afin de désigner les caractères extérieurs au PMB. Cette plage est subdivisée en deux parties égales, une partie haute et une partie basse, et chaque paire est constituée d’une « unité de code » de chacune de ces zones. Les éléments de la première moitié (haute) sont appelés « demi-codets hauts d’indirection » et ceux de la seconde moitié (basse) « demi-codets bas d’indirection ». On rencontre aussi le terme de seizet d’indirection.

Un autre codage, UTF-32 (ou UCS-4), utilise une seule valeur entre 0x00 et (théoriquement) 0x7FFFFFFF pour chaque caractère (bien que maintenant le JUC s’arrête à 0x10FFFF et ISO/CEI 10646 a établi que toutes les assignations futures de caractères prendront place dans cette zone). UCS-4 permet la représentation de chaque valeur par exactement quatre octets (soit un mot de 32 bits). UTF-32 permet donc une représentation binaire de chaque point de code du JUC, y compris ceux en dehors du PMB. Comme en UCS-2, chaque caractère codé a une taille fixe en octets, ce qui fait qu'UTF-32 est simple à manipuler, mais bien sûr, il nécessite deux fois plus de mémoire que l’UCS-2.

Occasionnellement, les articles sur Unicode mélangent les concepts UCS-2 et « UCS-16 ». UCS-16 n'existe pas ; les auteurs qui font cette erreur essayent de parler d’UCS-2 ou d’UTF-16.

Histoire de l’ISO 10646

[modifier | modifier le code]

L’Organisation internationale de normalisation (ISO) a commencé à composer le jeu universel de caractères en 1989 et a publié un brouillon de l’ISO 10646 en 1990. Hugh McGregor Ross en était l'un des principaux architectes. Ce standard différait nettement du standard actuel. Il définissait 128 groupes de 256 plans de 256 rangées de 256 cellules, pour un total apparent de 2 147 483 648 caractères, mais en fait le standard ne permettait de coder que 679 477 248 caractères, car il interdisait d’utiliser où que ce soit les valeurs d’octets des caractères de contrôle (0x00 à 0x1F et 0x80 à 0x9F, en notation hexadécimale). La lettre latine capitale A, par exemple, se situait dans le groupe 0x20, plan 0x20, rangée 0x20, cellule 0x41.

Les caractères de ce premier standard ISO 10646 pouvaient être codés de trois manières :

  1. UCS-4, quatre octets pour chaque caractère, permettant le codage facile de tous les caractères ;
  2. UCS-2, deux octets pour chaque caractère, permettant le codage immédiat du premier plan (0x20, le plan multilingue de base contenant les 36 864 premiers points de code), les autres plans et groupes étant codés en commutant entre eux par des séquences d'échappement ISO/CEI 2022 ;
  3. UTF-1, qui codait tous les caractères en séquences d’octets de longueur variable (1 à 5 octets, chacun d’eux ne contenant aucun caractère de contrôle).

En 1990, deux initiatives pour un jeu de caractères universel (UCS) existaient : Unicode, avec 16 bits pour chaque caractère (65 536 caractères possibles), et ISO 10646. Les entreprises du logiciel refusèrent la complexité et les exigences de taille de la norme ISO et surent convaincre plusieurs organismes nationaux membres de l’ISO de voter contre. Les normalisateurs de l’ISO réalisèrent qu’ils ne pouvaient continuer à supporter la norme en l’état et négocièrent l’unification de leur standard avec Unicode. Deux changements eurent lieu : la levée des limitations sur les caractères (prohibition des valeurs de caractères de contrôle), permettant ainsi des caractères tels que 0x0000101F, et la synchronisation du répertoire du plan multilingue de base avec celui d’Unicode.

Cependant, le temps passant, la situation changea dans le standard Unicode lui-même : 65 536 caractères devinrent insuffisants et, depuis la version 2.0 et suivantes, le standard supporte le codage de 1 112 064 caractères par les mécanismes d’indirection d’UTF-16. Pour cette raison, ISO 10646 fut limité à contenir autant de caractères que pouvait en coder l’UTF-16, c’est-à-dire à peine plus d’un million de caractères au lieu de plus de 2 milliards. Le codage UCS-4 de l'ISO 10646 a été incorporé dans le standard Unicode avec la limitation de l’UTF-16 sous le nom d’UTF-32. Quant à UTF-1, personne ne l’utilisait, en raison de son mauvais design (aucune manière de distinguer les octets solitaires, les octets de début de séquences et les autres octets, un problème similaire à celui du codage Shift-JIS pour le japonais) et de faibles performances (beaucoup d’opérations de division). Rob Pike et Ken Thompson, les développeurs du système d’exploitation Plan 9, conçurent un nouveau codage de taille variable, rapide et bien conçu, qui finit par être appelé UTF-8.

Différences entre ISO 10646 et Unicode

[modifier | modifier le code]

ISO 10646 et Unicode ont un répertoire identique et numérotent les mêmes caractères avec les mêmes nombres. La différence entre les deux est qu’Unicode ajoute des règles et spécifications à la norme ISO 10646. ISO 10646 est une simple table de caractères, une extension des standards précédents comme ISO/CEI 8859. En revanche, Unicode ajoute des règles de collation, normalisation de formes, et d’algorithme bidirectionnel pour les écritures comme l’hébreu et l’arabe. Pour l’interopérabilité entre les plates-formes, spécialement quand les écritures bidirectionnelles sont utilisées, il ne suffit pas de supporter l’ISO 10646 ; Unicode doit être implémenté.

Certaines applications peuvent utiliser les caractères ISO 10646 sans implémenter complètement Unicode. Une de celles-là est xterm, qui peut correctement afficher tous les caractères ISO 10646 qui ont une bijection entre caractère et glyphe et un seul sens d’écriture. Il peut gérer certaines marques combinatoires par méthodes de simple surimpression, mais ne peut afficher l’hébreu (écriture de droite à gauche), la dévanâgari (un même caractère représenté par plusieurs glyphes) ou l’arabe (qui cumule ces deux particularités). La plupart des applications à interface graphique utilisent des fonctionnalités de tracé de bibliothèques standard qui gèrent de tels systèmes d’écriture, comme (par exemple Pango).

Parler du jeu universel de caractères

[modifier | modifier le code]

ISO 10646, une référence générale, informelle pour la famille de normes ISO/CEI 10646, est acceptable dans la plupart des cas. Et même s’il s’agit d’un standard séparé, le terme Unicode est utilisé aussi fréquemment, informellement, à propos du JUC. Cependant, une référence normative au JUC tout comme une publication devrait se référer à une version particulière de l’une de ces deux normes sous la forme ISO/CEI 10646:{année} ; par exemple : ISO/CEI 10646:2003.

Note :

Avant l’édition 2003, il y avait deux parties de la norme ISO/CEI 10646, auquel on se réfère alors comme suit : ISO/CEI 10646-{partie}:{année} ; par exemple : ISO/CEI 10646-1:1993

Applications

[modifier | modifier le code]

Télécommunications

[modifier | modifier le code]

La norme ISO/CEI 10646 est recommandée dans les télécommunications dès 2008[3].

GB 18030

[modifier | modifier le code]

La norme de Chine populaire GB 18030 est construite pour prendre en compte au moins tous les caractères de l'ISO 10646.

Relation avec Unicode

[modifier | modifier le code]

Le consortium Unicode utilise la norme ISO/CEI 10646 pour développer les standards Unicode[4].

  • ISO/CEI 10646-1:1993 ≈ Unicode 1.1
  • ISO/CEI 10646-1:2000 ≈ Unicode 3.0
  • ISO/CEI 10646-2:2001 ≈ Unicode 3.2
  • ISO/CEI 10646:2003 ≈ Unicode 4.0
  • ISO/CEI 10646:2003 Amendement 1 ≈ Unicode 4.1
  • ISO/CEI 10646:2003 Amendement 2 ≈ Unicode 5.0
  • ISO/CEI 10646:2003 Amendements 3 & 4 ≈ Unicode 5.1
  • ISO/CEI 10646:2003 Amendements 5 & 6 = Unicode 5.2
  • ISO/CEI 10646:2003 Amendements 7 & 8 = ISO/CEI 10646:2011 ≈ Unicode 6.0
  • ISO/CEI 10646:2012 = Unicode 6.1
  • ISO/CEI 10646:2012 Amendements 1 & 2 = Unicode 7.0
  • ISO/CEI 10646:2014 Amendement 1 = Unicode 8.0
  • ISO/CEI 10646:2014 Amendement 2 = Unicode 9.0
  • ISO/CEI 10646:2017 Amendement 1 = Unicode 11.0
  • ISO/CEI 10646:2017 Amendement 2 = Unicode 12.0
  • ISO/CEI 10646:2020 Amendement 1 = Unicode 15.0

Notes et références

[modifier | modifier le code]
  1. ↑ http://alis.isoc.org/codage/iso10646/index.html
  2. ↑ ISO/CEI 10646-1:1993: Technologies de l'information — Jeu universel de caractères codés à plusieurs octets — Partie 1: Architecture et table multilingue
  3. ↑ « T.55  :  Utilisation du jeu universel de caractères codés sur plusieurs octets… », sur itu.int (consulté le 26 avril 2023).
  4. ↑ Voir The Unicode Standard pour plus de détails.

Annexes

[modifier | modifier le code]

Articles connexes

[modifier | modifier le code]
  • Unicode
  • Codages de caractères :
    • UTF-8
    • UTF-16
    • UTF-32
  • normes ISO en rapport :
    • ISO/CEI 646
    • ISO/CEI 2022
    • ISO 6429
    • ISO/CEI 8859
    • ISO 14651
    • ISO 15924
  • Liste de polices Unicode

Liens externes

[modifier | modifier le code]
  • Normes internationales CEI10646:
    • CEI10646 Technologies de l'information - Jeu universel de caractères codés (JUC)
  • ISO/CEI JTC1/SC2/WG2, groupe de travail chargé de l’ISO 10646
  • UTF-8 and Unicode FAQ
  • SIL’s freeware fonts, editors and documentation
  • Le texte officiel de la norme ISO/CEI 10646

Bibliographie

[modifier | modifier le code]
  • (en) Information technology -- Universal Coded Character Set (UCS), 21 mai 2012 (présentation en ligne)
v · m
Unicode
Jeux de caractères de base
  • UCS (ISO/CEI 10646)
  • Table des caractères Unicode
  • ISO/CEI 646, ASCII
  • ISO/CEI 8859-1
  • WGL4
  • Unihan
Logo d'Unicode
Codification de fichiers et protocoles
  • UTF-8
  • UTF-16
  • UTF-32
  • CESU-8
  • UTF-7
  • BOCU-1
  • SCSU
  • BOM
Adaptations de référence
  • UTF-EBCDIC (Amérique, Europe occidentale)
  • ISO/CEI 8859-11 (ou TIS-620) (Thaïlande)
  • ISCII (Inde)
  • SLS 1326 (ou TSCII) (Sri Lanka)
  • Shift-JIS (Japon)
  • GB 18030 (Chine)
  • HKSCS (Hong Kong)
Équivalences standards
  • NFC (forme précomposée, recommandée)
  • NFD (forme décomposée)
  • NFKC (forme précomposée de compatibilité)
  • NFKD (forme décomposée de compatibilité)
Propriétés et algorithmes
  • Texte bidirectionnel
  • Casse
  • Ordonnancement UCA
Transformations
  • Stringprep
  • Punycode
Standards et normes liés
  • BCP 47 (étiquettes IETF d’identification de langues)
  • ISO 639 (codes pour la représentation des noms de langues ou groupes de langues)
  • ISO 15924 (codes pour la représentation des noms d’écritures)
  • ISO 3166-1 (codes pour la représentation des noms de pays ou régions du monde)
  • ISO 4217 (codes pour la représentation des noms de devises monétaires)
Mises en œuvre et applications
  • ICU
  • CLDR
  • IDN
  • IRI
  • Entités de caractère XLM et HTML
  • OpenType
  • Uniscribe
  • Courriel et Unicode
v · m
Jeux de caractères codés
Multi-octets
Unicode
  • ISO/CEI 10646
  • Table des caractères Unicode
  • UTF-8
  • UTF-16
  • UTF-32
  • UTF-EBCDIC
  • CESU-8
  • BOCU-1
Asiatiques
  • ISO/CEI 2022
  • ISCII (Inde)
  • SLS 1326 (Sri Lanka)
  • Codage des caractères chinois
  • Shift-JIS (Japon)
  • Big5 (Taiwan et Hong Kong)
  • HKCS (Hong Kong)
  • GBK (Rép. Pop. de Chine)
  • GB 18030 (Rép. Pop. de Chine)
Ancienne encodeuse de texte sur ruban perforé
8 bits
ISO/CEI 8859
  • -1 (Latin-1)
  • -2 (Latin-2)
  • -3 (Latin-3)
  • -4 (Latin-4)
  • -5 (Cyrillique)
  • -6 (Arabe)
  • -7 (Grec)
  • -8 (Hébreu)
  • -9 (Latin-5)
  • -10 (Latin-6)
  • -11 (Thaï)
  • -12 (Devanagari)
  • -13 (Latin-7)
  • -14 (Latin-8)
  • -15 (Latin-9)
  • -16 (Latin-10)
Pages de code Windows
  • 874 / TIS-620
  • 932 / Shift JIS
  • 936 / GBK
  • 949 / EUC-KR
  • 950 / Big5
  • 1250
  • 1251
  • 1252
  • 1253
  • 1254
  • 1255
  • 1256
  • 1257
  • 1258
  • 54936 / GB18030
Pages de code Mac OS MacRoman
Pages de code DOS
  • 437
  • 720
  • 737
  • 775
  • 850
  • 852
  • 855
  • 857
  • 858
  • 860
  • 861
  • 862
  • 863
  • 864
  • 865
  • 866
  • 869
  • Kamenický
  • Mazovia
  • MIK
  • Iran System
Pages de code diverses
  • ANSEL
  • DEC-MCS
  • KOI8-R (russe)
  • KOI8-U (ukrainien)
  • StandardEncoding (PostScript)
  • Page de code vidéotex
  • Page de code ZX Spectrum
  • Page de code Amstrad CPC
  • Page de code Atari ST
  • Page de code Amiga
Non basés sur ISO/IEC 646
  • VISCII
  • EBCDIC
  • EBCDIC 297
  • EBCDIC 8859
7 bits
  • ISO/CEI 646 (base commune invariante et liste des spécialisations)
  • US ASCII
Moins de 7 bits
  • Code Chappe
  • Alphabet sémaphore
  • Code international des signaux maritimes
  • Code Morse international
  • Code wabun
  • Code Baudot
  • RADIX-50
  • Sixbit
  • Codage des caractères
  • Clavier d’ordinateur
  • Police numérique
  • Glyphe
  • Mojibake
  • Portail:Écriture
v · m
Normes ISO
  • 1
  • 3
  • 4
  • 9
  • 31
  • 216
  • 217
  • 228
  • 233
  • 259
  • 269
  • 639
  • 646
  • 690
  • 843
  • 1000
  • 2022
  • 2108
  • 2709
  • 3103
  • 3166
  • 3166-1
  • 3166-2
  • 3166-3
  • 3297
  • 3533
  • 3901
  • 4217
  • 5218
  • 5426
  • 6166
  • 6358
  • 6438
  • 6709
  • 7010
  • 7185
  • 7810
  • 8601
  • 8613
  • 8859
  • 9001
  • 9002
  • 9003
  • 9004
  • 9075
  • 9126
  • 9241
  • 9362
  • 9594
  • 9646
  • 9660
  • 9945
  • 9984
  • 10006
  • 10007
  • 10118-3
  • 10303
  • 10303-11
  • 10303-238
  • 10383
  • 10589
  • 10646
  • 10664
  • 10957
  • 11179
  • 11238
  • 11239
  • 11240
  • 11544
  • 11615
  • 11616
  • 11783
  • 11801
  • 12207
  • 13211-1
  • 13216
  • 13250
  • 13335
  • 13399
  • 13485
  • 13568
  • 13616
  • 14000
  • 14001
  • 14064
  • 14069
  • 14396
  • 14882
  • 15189
  • 15408
  • 15444
  • 15489
  • 15504
  • 15511
  • 15706
  • 15836
  • 15924
  • 16023
  • 16262
  • 16610
  • 17025
  • 17799
  • 18004
  • 19005
  • 19110
  • 19115
  • 19439
  • 19501
  • 19510
  • 19775-1
  • 20000
  • 20252
  • 21127
  • 21500
  • 22000
  • 23270
  • 24165
  • 25178
  • 26000
  • 26300
  • 27001
  • 27002
  • 27005
  • 27006
  • 27017
  • 27018
  • 29500
  • 32000
  • 50001
Logo de l’Organisation internationale de normalisation
  • Liste de normes ISO
  • Liste des normes de romanisation ISO
  • icône décorative Portail de l’informatique
  • icône décorative Portail de l’écriture
Ce document provient de « https://fr.teknopedia.teknokrat.ac.id/w/index.php?title=ISO/CEI_10646&oldid=225432952 ».
Catégories :
  • Unicode
  • Codage des caractères
  • Norme ISO
  • Norme CEI
Catégories cachées :
  • Article utilisant une Infobox
  • Portail:Informatique/Articles liés
  • Portail:Technologies/Articles liés
  • Portail:Écriture/Articles liés
  • Portail:Langues/Articles liés

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id