Big5
Big5 ou Big-5 est une méthode de codage de caractères, principalement utilisée à Taïwan et à Hong Kong, permettant de saisir les caractères chinois traditionnels. Son équivalent pour les caractères chinois simplifiés est le codage GB, utilisé en République populaire de Chine.
Nom
[modifier | modifier le code]Le nom chinois Big5
Histoire
[modifier | modifier le code]La méthode d'encodage Big5 a été défini par l'Institut de l’Information Industrielle de Taïwan (
Le gouvernement de la République de Chine le déclare comme son standard au milieu des années 1980 alors que Big5 était déjà un standard de fait.
Hong Kong a aussi adopté le codage de caractères Big5. Cependant, le cantonais, langue officielle de cette région, utilise beaucoup de caractères chinois archaïques qui ne sont pas disponibles dans ce jeu de caractères. Pour régler ce problème, le gouvernement de Hong Kong créa l'extension « Government Chinese Character Set » en 1995 puis « Hong Kong Supplementary Character Set » (HKSCS) en 1999. Les extensions de Hong Kong sont distribuées habituellement sous forme de patch.
Structure
[modifier | modifier le code]Principes
[modifier | modifier le code]La table de caractères originale Big5 est classée premièrement par la fréquence d'usage, puis par le nombre de traits et enfin par les radicaux Kangxi.
Dans ce premier jeu de caractères, il y manquait des sinogrammes pourtant fréquemment utilisés. C'est pourquoi, chaque fournisseur développa sa propre extension. Ainsi, l'extension ETen devint partie intégrante du standard Big5 actuel grâce à sa popularité.
La structure du codage Big5 n'était pas conforme au standard ISO 2022 mais possédait certaines similarités avec le codage Shift_JIS : il s'agit d'un codage à double-octets ayant la structure suivante :
- le premier octet s'étend dans la plage 0xa1-0xfe
- le second octet s'étend dans les plages 0x40-0x7e et 0xa1-0xfe
Certaines variantes du Big5, comme le HKSCS, utilisent une plage étendue pour le premier octet, correspondant aux valeurs situées entre 0x80 et 0xA0 (comme pour le Shift_JIS).
La valeur de chaque code Big5 est le plus souvent représenté par un nombre hexadécimal à 4 chiffres, qui décrit les deux octets du code Big5 de la même manière que la représentation big-endian (ou gros-boutiste). Par exemple, le code Big5 du caractère "
En théorie, le codage Big5 paraît être exclusivement à double-octets. Dans la pratique, les codes Big5 sont toujours employés avec le codage ASCII (ou autres jeux de caractères en 8 bits). Vous pourrez donc trouver un mélange de codes Big5 et ASCII dans un texte encodé en Big5. Les octets appartenant à la plage 0x00-0x7f, qui ne se retrouvent par dans les codages en double-octets, seront considérés comme étant ASCII.
Quelques détails
[modifier | modifier le code]Dans le Big5 originel, la table de code était séparée en plusieurs parties :
A140-A3BF | "Caractères graphiques"[n 1] ( |
A3C0-A3FE | Plage réservée aux caractères définis par l'utilisateur ( |
A440-C67E | Caractères chinois fréquents ( |
C6A1-C8FE | Plage réservée aux caractères définis par l'utilisateur ( |
C940-F9D5 | Caractères chinois moins fréquents ( |
F9D6-FEFE | Plage réservée aux caractères définis par l'utilisateur ( |
|
Dans la plupart des extensions, les caractères ajoutés se trouvaient dans les plages réservées correspondant à la zone précédente : les ponctuations additionnelles étaient mises dans la plage réservée A3C0-A3FE, les caractères additionnels dans la plage C6A1-C8FE ou F9D6-FEFE. Parfois, en raison du nombre trop important de caractères ajoutés, certains groupes n'ont pas pu respecter cette règle comme les lettres cyrilliques et les kana qui se sont retrouvés dans la plage C6A1-C8FE.