Upload
tino
View
55
Download
3
Embed Size (px)
DESCRIPTION
Standardizacija in kakovost informacijskih sistemov. Nabori znakov. Prazgodovina: Fieldata. Ameriški vojaški standard iz petdesetih 6-biten Povezan s sistemom vojaškim sistemom SAGE, katerega deli so še danes uporabljani v kontroli poletov. Prazgodovina: EBCDIC. IBM 360 (1963) - PowerPoint PPT Presentation
Citation preview
Standardizacija in kakovost informacijskih sistemov
Nabori znakov
Prazgodovina: Fieldata
• Ameriški vojaški standard iz petdesetih
• 6-biten
• Povezan s sistemom vojaškim sistemom SAGE, katerega deli so še danes uporabljani v kontroli poletov
Prazgodovina: EBCDIC
• IBM 360 (1963)
• Format za luknjane kartice
• 8-biten! (ASCII je 7-biten)
• Kot pri ASCII obstajajo tudi tu različne kodne strani za različne jezike
• Nima posebnih prednosti pred osnovnim ASCII
• Še vedno v rabi na IBMovih večjih računalnikih (mainframe), a le zaradi združljivosti
Prazgodovina: EBCDIC
Prazgodovina: ASCII
• Bellovi teleprinterji
• Prvotno so nameravali uporabljati 6-bitni Fieldata
• 0-31 so kontrolni znaki, potrebni za teleprinterje, terminale, tiskalnike– danes v rabi pretežno le še LF in CR, žal
nekonsistentno
• Iz njega izhaja današnji Unicode
• Nekateri ga imajo za najuspešnejši standard vseh časov
Originalni ASCII (7 bitov)
YUSCII (7 bitov)
Ž
Š
Đ
Ć
Č
• Žrtvovani: @, [, \, ], `, {, |, }– teh je najmanj škoda– mogoče jih je natipkati– sprejemljivo za
tiskalnike brez 8-bitnih znakov
• Enim prvih grafičnih kartic smo dodajali stikala za preklop med ASCII in YUSCII
• Še vedno krožijo fonti s takim razporedom
IBMove razširitve ASCIIja na 8 bitov:“kodne strani” (code pages)
• Obdržijo vse znake v spodnjem delu (7 bitov)
• Znaki s kodami nad 128 so različni v različnih straneh, npr:– codepage 437, “DOS-US”: IBM PC (1981), zgoraj so
okvirčki
8-bitni “ASCII”:IBMove “kodne strani” – (DOS) code pages
• Obdržijo vse znake v spodnjem delu (7 bitov)
• Znaki s kodami nad 128 so različni v različnih straneh, npr:– CP 437 (DOS-US, IBM 437): na prvih IBM PC (1981)
• zgornje kode so uporabili za okvirčke
– CP 852 (IBM 852, Slavic code page): vsebuje vzhodno evropske znake, vključno z našimi
• žal so seveda tam, kjer so v ameriškem 437 okvirčki...
– CP 737 – grščina– CP 855 – cirilica
8-bitni “ASCII”:Microsoftove “ANSI code pages”
– 1250 — East European Latin – 1251 — Cyrillic – 1252 — West European Latin – 1253 — Greek – 1254 — Turkish – 1255 — Hebrew – 1256 — Arabic – 1257 — Baltic – 1258 — Vietnamese
• Ti standardi so podobni ISO-8859, vendar dovolj različni, da povzročajo težave – 1250 je zelo podoben ISO-8859-1
• Zakaj je to potrebno? Če se “standardi” razlikujejo, moraš, če nočeš imeti problemov, uporabljati isti sistem, kot večina. Kdo s tem pridobi? Tisti, katerega sistem uporablja večina.
ISO-8859:Standardni 8-bitni kodni sistemi
• Spodnji del je vedno enak ASCII– ISO-8859-1 (Latin-1): zahodno evropski jeziki, albanščina, svahili;
podoben mu je CP 1252
– ISO-8859-2 (Latin-2): vzhodno evropski (slovanski, madžarščina in romunščina); podoben CP 1250
– ISO-8859-3 (Latin-3): južno evropski: turški, malteški, esperanto
– ... do 8859-14, poleg tega pa še 15 in 16, ki sta revidirana 1 in 2
• Ne vsebuje znakov besednih pisav (kitajska, japonska...)
• Ne vsebuje znakov, ki v času sestavljanja standarda niso bili splošno uporabljani:– ima »takšne narekovaje«
– nima pa “teh narekovajev”, ker se tedaj še niso uporabljali (ima pa jih CP 1252, zato jih morajo podpirati tudi vsi ne-Microsoftovi sistemi)
Revizije 8859
• ISO 8859-15: kot ISO 8859-1, a brez nekaterih pogosteje uporabljanih znakov, ima pa simbol za evro, poleg tega pa še Š, š, Ž, ž, Œ, œ in Ÿ, ker to potrebujejo Francozi, Finci in Estonci– Zveni znano? S katerim našim znakom so najpogosteje težave?
• ISO 8859-16: združeni znaki za južno in vzhodno evropo (slovenščina, hrvaščina, italijanščina, madžarščina, poljščina, romunščina, mimogrede pa še francoščina, finščina in nemščina)
(http://en.wikipedia.org/wiki/ISO_8859)
Klingonščina
(Še pomnite predavanje o kriptografiji?)
Unicode
• V načelu gre za 32-bitni nabor, vendar lahko kodiramo s spremenljivo dolžino
• Prvih 256 znakov identičnih ISO 8859-1 (zakaj ne 8859-2? )
• Vseh doslej določenih znakov je približno 90.000, večina je kitajskih in korejskih
• Unicode pozna različne oblike kodiranja– UTF-32 je preprost: vsak znak ima 32 bitov (4 bajte);
problem je little- in big-endian– UTF-8 je najbolj uveljavljen, saj je združljiv z (7-
bitnim) ASCII
Unicode: UTF 8
Code range UTF-8
000000–00007F0xxxxxxx
0xxxxxxx
000080–0007FF00000zzz zxxxxxxx
110zzzzx 10xxxxxx
000800–00FFFFzzzzzxxx xxxxxxxx
1110zzzz 10zxxxxx 10xxxxxx
010000–10FFFF000zzzzz xxxxxxxx xxxxxxxx
11110zzz 10zzxxxx 10xxxxxx 10xxxxxx
• Znak je zapisan z 1-4 bajti– 1 bajt za angleške znake– 2 bajta za vse evropske, hebrejske...
Kritike Unicodea
• Nekateri Azijci vidijo v njem zaroto Zahoda;– Unicode Consortium naj bi ne “razumel” vzhodnih
pisav– V resnici je v konzorciju veliko predstavnikov Kitajcev,
Korejcev in Japoncev
• Tajski znaki naj bi bili razporejeni nelogično– Standard povzema obstoječi tajski standard
Pisave, ki jih še ni v Unicode
• Egiptovski hieroglifi in sumerski klinopis
• Klingonščina– Predlog vključitve (1997) zavrnjen z razlago, da je uradna pisava
Klingoncev latinščina (kar je res!)– Zdaj pišejo bloge v klingonščini, da bi pisava dejansko postala
uporabljana, tako da upanje na popravo krivice ostaja
• Tolkienove vilinske pisave (Tengwar in Cirth); predlog še preučujejo
• Unicode vsebuje prostor za približno 6000 znakov, ki nikoli ne bodo standardizirani. Obstaja skupina (Tolkienisti, Klingoni...), ki se dogovarja za “standardizacijo” tega prostora.