Beruflich Dokumente
Kultur Dokumente
Unicode
codage utf8
Coder un message
Coder pour : transmettre dans le temps ou lespace rendre intelligible ou pas (crypter)
On distinguera : le codage (reprsentation symbolique), lencodage (sa ralisation physique)
1 1 2 3
4
5
N de ligne = 2
N de colonne = 3
8
Le smaphore marin
45
90
135
180
225
270
315
J W D Y R M F U Q L E T P K O I H C B A
Z la lettre M V S N G X
90
BRAVO
9
Le morse
Le braille
cloches & tambours
http://campanologie.free.fr/pdf/Code_et_langage_des_cloches.pdf
http://www.abm.fr/abm/recit/recikersal.html
A B Y Z
65 66 89 90
a b y z
97 98 121 122
0 1 8 9
48 49 56 57
. , ; ? @
46 44 59 63 64
L o a se corse
Les caractres spcifiques : accentus, dautres critures !
La reprsentation interne
Reprsentation binaire
un ordinateur manipule et stocke toute information sous forme de suite de 0 et 1 (bits) regroups par octet (byte)
Caractres
0101 1010 ( 0011 0000 1110 1001 0001 0000 1110 1100 0010 1111 0101 0100 0000 0000 1111 1111 0111 1111 1111 1111
0100
Nombres
Visualisation binaire
iso8859-1
14 critures numriques et multilinguisme 2012-2013
Visualisation hxadcimale
iso8859-1
15 critures numriques et multilinguisme 2012-2013
Notation binaire ?
la base 10 ou dcimale :
la base 2 ou binaire :
11101101
= 1x27 +1x26 + 1x25 +0x24 + 1x23 + 1x22 + 0x21 + 1x20 = 1x128 + 1x64 + 1x32 + 0x16 + 1x8 + 1x4 + 0x2 + 1x1 les puissances de 2
La notation binaire est peu lisible, on lui prfre la notation hxadcimale base 16, en : 1. regroupant les bits 4 par 4 2 pour chacun des groupes : calculant sa valeur (de 0 15) le substituant par un chiffre hexadcimal de cette valeur parmi : 0 1 2 3 4 5 6 7 8 9A B C D E F
111011012 ? (1110)(1101)
1x23 + 1x22 + 1x21 + 0x20 = 1x8 + 1x4 + 1x2 + 0x1 1x23 + 1x22 + 0x21 + 1x20 = 1x8 + 1x4 + 0x2 + 1x1
= 1410 (E)(D)
= 1310
ED16
notation plus compacte et mnmoniques !!!
19 critures numriques et multilinguisme 2012-2013
Vrification hxadcimale
ED16
= 23710
addition
Usage hxadcimaux notation des caractres %20 URL, espace OxED perl, Z ძ entit html,
ძ - -
0 1 2 3 4 5 6 7 8 9 A B C D E F 0 0 1 2 3 4 5 6 7 8 9 A B C D E F caractres de contrle et divers non imprimables 0 1 caractres de contrle et divers non imprimables 1 2 ! " # $ % & ' ( ) * + , - . / 2 0 1 ! 3 3 @ A 4 0 1 4 @ Q 5 P A 5 6 7 " 2 2 B # 3 3 C
C S S c
$ 4 4 D
D T T d
% 5 5 E
E U U e
& 6 6 F
F V V f
' 7 7 G
G W W g
( 8 8 H
H X X h
) 9 9 I
I Y Y i
* : : J
J Z Z j
+ ; ; K
K [ [ k
, < < L
L \ \ l
= = M
M ] ] m
. > > N
N ^ ^ n
/ ? ? O O _
B R P Q R ` a b ` a r p q b
_ o
ligne
(1)
Saisie de caractres :
Editeur hxadcimal :
Transcodage de textes :
Sauvegarde texte brut Unifier (vers utf8), recode
Gestionnaire de fonte :
(2)
Multiscript (plus ou moins universelle) large couverture multiscript, mais qualit moindre
Arial Unicode MS, 51000 glyphes Code2000, 35000 glyphes Code2001, critures historiques Arial, Times New Roman (occidental + arabe / hbreu)
7 bits, 89 caractres : lettres latines, chiffres, ponctuations et 49 16 bits, standard contrles ISO8859-X chinois part la zone ascii, des ASCII codes non compatibles GB 16 bits, standard avec 8859-X ou 125X japonais
JIS
UNICODE proches des 8859-X mais ajout de caractres N critures 8 bits, oublis indiennes
MAC
ISCII-X
Big Five
KPS
27 critures numriques et multilinguisme 2012-2013
ISO8859-X
ASCII
GB
MAC
JIS
Windows125-X
ISCII-X
KPS
28 critures numriques et multilinguisme 2012-2013
numrots entre 0 et 1 114 111
soit de 0 Ox10FFFF
historiques :
Organisation dUnicode
critures historiques notations plans 16 mathmatiques & musicales
Plan 16 Plan 15 priv 0xF0000 Plan 14 priv 0xE0000 SSP Plan 2 0x20000 SIP Plan 1 0x10000 SMP 0x10FFFF Plan 0 0x0000 0xFFFFF BMP 0xEFFFF 0x100000
0x2FFFF 0x1FFFF
0xFFFF
30 critures numriques et multilinguisme 2012-2013
31
Les blocs et critures Les blocs sont nomms et dlimits. Ils sont homognes : des caractres de mme
criture
(ex. arabe).
(1 ou 2 seizets)
Lencodage UTF8
(1)
Valeur utf8
Code caractre
0aaaaaaa 00000aaa aabbbbbb aaaabbbb bbcccccc 000aaabb bbbbcccc ccdddddd
Lentte des octets utf8 : expr. Rg. ^1*0 0 : unique octet ascii 10 : octet non initial 1{2,4}0 : octet initial et taille de la squence
34
utf8
1000 x 1 = 1000 1000 x 2 = 2000
utf16
utf32
1000 x 3 = 3000
950 x 1 + 50 x 2 = 1050
1000 x 2 = 2000
1000 x 4 = 4000
franais
35
Lencodage UTF8
exemples
(2)
Valeur utf8
01100101 11000101 10010011 11101100 10011100 10000100
11110000 10010000 10000010 10000000
Code caractre
01100101 00000001 01010011 11000111 00000100 00000001 00000000 10000000 65 0153 C704 10080
Soit : e
36
RAM bonjour.txt
0 2 1 3 5
CPU
Registre de travail
ASCII
42 6F 6E 6A 6F 75 72
4 6 8
42 6E 6F 72
6F 6A 75
7 9 11 13 15 17 19 21
00
00
6F 75 72 00 6A 00 6E 42 6F polices
lecture
10 12 14 16 18 20
B on j o u r
cran
37
CPU
Registre de travail
Unicod
0042 006F 006E 006A 006F 0075 0072
4 6 8
00 00 00 00 00 00 00
42 6F 6E 6A 6F 75 72
7 9 11
00
00
6F 75 00 6A 72 00 6E 42 6F polices
lecture
10 12 14 16 18 20
13 15 17 19 21
grand-boutien BE
B on j o u r
cran
38
CPU
Registre de travail
Unicod
0042 006F 006E 006A 006F 0075 0072
4 6 8
00 00 00 00 00 00 00
42 6F 6E 6A 6F 75 72
7 9 11
00
00
6A 00 6E 6F 72 75 42 00 polices
lecture
10 12 14 16 18 20
13 15 17 19 21
petit-boutien LE
cran
39
MAC
PC
Lors de la lecture dun fichier provenant dune autre plateforme le BOM sera lu comme un caractre Unicode invalide.
40
CPU
Registre de travail
FE
42 6F 6E 6A 6F 75 72
FF
00 00 00 00 00 00 00
5 7 9 11 13 15 17 19 21
00
00
6F 72 75 42 00 6A 00 FF FE 00 6E polices
inverser
14 16 18 20
petit-boutien LE
Bo n jo u r
cran
41
Unicode LE et lindirection
Au dpart Unicode reprsent sur 16 bits ! Comment alors reprsenter des codes suprieurs 65535 ?
D820 DC82
42
De grands principes
Unicode traite :
Il sappuie sur :
une smantique de caractres efficace la compositionnalit un ordre logique du texte luniversalit et la compatibilit
Caractres arabes
Les caractres traditionnels, des caractres tendus (persan, des voyelles combinatoires
0x0628 0x0633 0x628 0x628
ourdou),
Et - des ponctuations spcifiques - les chiffres dits indiens - divers marqueurs combinatoires (honorifiques, de nombres,
dates, vers) Aussi des formes de prsentation ! - ligatures - formes contextuelles
44
(0x6C34)
Syllabaires : hiragana*, katakana, bopomofo* Ponctuations propres (en pleine ou demi largeur) Symboles & annotations: idogrammes cercls & mois 16 traits calligraphiques
(0x303E 0x9149)
= (Ox2FF2 0x2EA1 0x53E4 0x6708)
46
CJC : le hangul
Lcriture corenne (hangul) affiche des syllabes constitues de caractres phonmiques (jamo) inscrites dans un carr.
2 blocs unicode :
11 172 syllabes prcomposes selon les 6 agencements spatiaux et classes par ordre syllabique Les jamos (modernes et archaques): - consonnes (initiales & finales) - voyelles
2 indicateurs de consonnes (0x115F) ou voyelles (0x1160) absentes permettent de crer des syllabes non standards
47
Caractres indiens
(1)
gumurkhi
goujarati compatibles avec ISCII, permettant la transcription entre critures indiennes kannada
dvanagari
bengali
telugu tamoul
48
Caractres indiens
Une mme logique syllabique :
(2)
/A/
Composition de caractres
Unicode distingue :
(lettres, chiffres,
a
50
0x034F : gluon de graphme regrouper des caractre pour appliquer un caractre combinatoire.
Les espaces 0x200B : ZWS, espace sans chasse crer un dcoupage invisible de mots.
Lindicateur de boutiennet 0xFEFF : BOM, en dbut de texte uniquement
51 critures numriques et multilinguisme 2012-2013
Derrire Unicode
(1)
un glyphe indicatif :
0x03AB
un code unique (max 21 bits) : des annotations : synonymies ressemblance nom alternatif commentaires
03A5 0308 266F music sharp sign (voir #) = pound sign, hash, crosshatch, octothorpe Spanish (voir )
52
Derrire Unicode
(2)
Des proprits associes (des fichiers textes CSV) accessibles par programme
par ex. dans des expressions rgulires sous Perl \p{IsCyrillic}
type de caractres : lettre L : capitale u, bas-de-casse l, titrage t, marque M : diacritique chasse c ou pas n, englobant e nombre N : dcimal d, alphabtique l, autre o, ponctuation P : autre o, tiret d, ouverture s, fermeture e symbole S : autre o, montaire c, mathmatique m, sparateur Z : espace e, lignes l, paragraphee p commande C : formatage f, indirection s M de type ? Lu
53 critures numriques et multilinguisme 2012-2013
Derrire Unicode
(3)
- algorithme de tri
comparaison alphabtique
Classes de caractres
toute ponctuation tout caractre autre que pontuation
caractre cyrillique
tout caractre alphabtique