Uvod u organizaciju raunara Vebe 3 as 1
Uvod u organizaciju računara Vežbe – 3. čas 1
Zapis tekstova u računaru 2
Šta je to tekst? l Tekst (ili dokument) je – "informacija namenjena ljudskom sporazumevanju koja može biti prikazana u dvodimenzionalnom obliku. . . Tekst se sastoji od grafičkih elemenata kao što su karakteri, geometrijski ili fotografski elementi ili njihove kombinacije, koji čine sadržaj dokumenta. " (ISO-definicija) Uvod u organizaciju računara 3
Tekst je niz karaktera Iako obično tekst zamišljamo kao dvodimenzioni objekat, u računarima se tekst predstavlja kao jednodimenzioni (linearni) niz karaktera. l Potrebno je, dakle, uvesti specijalne karaktere koji označavaju prelazak u novi red, tabulator, kraj teksta i slično l Uvod u organizaciju računara 4
Zapis karaktera u računaru Računari su zasnovani na binarnoj aritmetici l Cele brojeve je moguće predstaviti u binarnom sistemu l Osnovna ideja je svakom karakteru pridružiti odredjeni ceo broj na unapred dogovoreni način l Ove brojeve zovemo kodovima karaktera (character codes) l Uvod u organizaciju računara 5
Koliko karaktera želimo da predstavimo u računarima? l Tokom razvoja računarstva broj karaktera je postajao sve veći l Pošto je u početku razvoja englesko govorno područje bilo dominantno osnovno je bilo predstaviti sledeće karaktere: Uvod u organizaciju računara 6
Englesko govorno područje l l l Velika slova engleskog alfabeta : A, B, . . . , Z Mala slova engleskog alfabeta : a, b, . . . , z Cifre : 0, 1, . . . , 9 Interpunkcijske znake : . , : ; ’+*-_ i slično Specijalne znake : kraj reda, tabulator i slično Uvod u organizaciju računara 7
Standardni karakterski kodovi Sedamdesetih godina su se pojavile tabele standardnih karakterskih kodova dovoljne za zapis pomenutih karaktera l Najpoznatiji su • EBCDIC – IBM-ov standard, korišćen uglavnom na mainframe računarima, pogodan za bušene kartice • ASCII – Standard iz koga se razvila većina današnjih standarda l Uvod u organizaciju računara 8
ASCII l ASCII (American Standard Code for Information Interchange) l ASCII sedmobitan (broj karaktera je 128) Uvod u organizaciju računara 9
ASCII tabela Uvod u organizaciju računara 10
Primeri l Karakter A se zapisuje kao (41)16 tj. 0 x 41 što je (65)10 tj. (1000001)2 l Razmak se zapisuje kao (20)16 što je (32)10 tj. (0100000)2 l Zapišite cifru 3 u ASCII kodu l Zapišite tekst Fakultet u ASCII kodu Uvod u organizaciju računara 11
Oznaka za kraj reda l Oznaka za kraj reda se ne zapisuje isto u svim operativnim sistemima l Pod Windows ova se oznaka se zapisuje sa dva karaktera (CR LF), 0 x. D 0 x. A tj. 13 10 – istorijski razlozi (stari štampači) l Unix koristi samo karakter CR tj. 0 x. D Uvod u organizaciju računara 12
Šta sa ostalim jezicima? l Razvojem računarstva se javlja potreba kodiranja tekstova i na drugim jezicima l Kroz istoriju su postojala mnoga rešenja, od kojih su se neka zadržala, a neka su nestala Uvod u organizaciju računara 13
Kodne strane l Pod kodnom stranom (Code page) tj. skupom karaktera (Character set, charset) podrazumevamo uredjenu listu karaktera predstavljenih svojim karakterskim kodovima Uvod u organizaciju računara 14
Kodne strane Podaci se u računarima obično zapisuju bajt po bajt l ASCII je sedmobitni standard l ASCII karakteri se zapisuju tao što se u svakom bajtu bit najveće težine postavi na 0 l To ostavlja prostor za novih 128 karaktera čiji binarni zapis počinje sa 1 l Uvod u organizaciju računara 15
Kodne strane Ovaj prostor se može popuniti na razne načine l Rešenje nije univerzalno, jer svakako na svetu postoji više od 256 različitih karaktera l Postavljeni su razni standardi dopunjavanja ovih 128 karaktera l Svim ovim kodnim stranama je zajedničko prvih 128 karaktera i oni se poklapaju sa ASCII l Uvod u organizaciju računara 16
Kodne strane l Ovako napravljene kodne strane obično omogućuju kodiranje tekstova na više srodnih jezika (obično i geografski bliskih) l Nama su uglavnom važne kodne strane napravljene za centralnoevropske (Central European) latinice, kao i ćirilične kodne strane Uvod u organizaciju računara 17
Najčešće korišćene kodne strane kod nas ISO 8859 -2 (Latin 2) l ISO 8859 -5 (Ćirilična) l Windows 1250 l Windows 1251 (Ćirilična) l • Prve dve su delo medjunarodne organizacije za standardizaciju (International Standard organization), dok su naredne dve Microsoft-ovi standardi Uvod u organizaciju računara 18
Latin 1 l Poželjno je poznavati i osnovnu kodnu stranu ISO 8859 -1 (Latin 1) jer je veoma često postavljena kao podrazumevana kodna strana. Ona se koristi za zapis tekstova na zapadno evropskim jezicima (Western European) Uvod u organizaciju računara 19
ISO 8859 -1 (Latin 1) Uvod u organizaciju računara 20
ISO 8859 -2 Uvod u organizaciju računara 21
Windows 1250 Uvod u organizaciju računara 22
Windows 1251 Uvod u organizaciju računara 23
Primeri l Kako izgleda reč Matf zapisana u kodnoj strani ISO 8859 -2? A u Windows 1250? A u Windows 1251? l A reč lišće? l Šta predstavlja niz kodova 138 65 111 33 u kodnoj strani ISO 8859 -2? A u Latin 1? Uvod u organizaciju računara 24
Višebajtni karakterski kodovi Iako navedene kodne strane omogućuju kodiranje tekstova koji nisu na engleskom jeziku nije moguće npr. u istom tekstu mešati ćirilicu i našu latinicu. l Azijskim jezicima nije dovoljno 256 mesta za zapis svih karaktera. l Zbog toga se uvode višebajtni karakterski kodovi l Uvod u organizaciju računara 25
MBCS l Pre svega zbog potreba istočno azijskih korisnika uvedeni su tzv. višebajtni skupovi karaktera tj. Multi. Byte Character Sets (MBCS) Uvod u organizaciju računara 26
MBCS Ideja je u tome da se najčešće korišćeni karakteri zapisuju koristeći samo jedan bajt, dok se ostali karakteri zapisuju koristeći dva bajta, tj. koristi se mešavina jednobajtnih i dvobajtnih karakterskih kodova (pod UNIX-om nekad čak i trobajtnih) l Ovo značajno otežava tumačenje podataka l Uvod u organizaciju računara 27
MBCS Uvod u organizaciju računara 28
UCS, ISO 10646, UNICODE Kasnih osamdesetih, dve velike organizacije su pokušale standardizaciju tzv. Univerzalnog skupa karaktera (Universal Character Set - UCS) l To su bili ISO, kroz standard 10646 i projekat UNICODE organizovan i finansiran uglavnom od strane američkih firmi koje su se bavile proizvodnjom višejezičkog softvera. l Uvod u organizaciju računara 29
ISO 10646 l ISO 10646 je zamišljen kao 4 bajtni standard. Pri tome se prvih 65536 karaktera koriste kao osnovni višejezični skup karaktera dok je ostali prostor ostavljen kao proširenje za drevne jezike, celokupnu naučnu notaciju i slično. Uvod u organizaciju računara 30
UNICODE Vremenom su se pomenuta dva projekta združila i nastao je jedinstven dvobajtni standard koji jednostavno nazivamo UNICODE l UNICODE svakom karakteru dodeljuje dvobajtni kod l Prvih 128 karaktera se poklapaju sa ASCII standardom, dok su sledećih 128 napravljeni tako da se pokalapaju sa Latin 1 standardom l Uvod u organizaciju računara 31
Primeri l Zapisati reč Matf koristeći UNICODE l Zapisati reč višnjičica ćirilicom i latinicom u UNICODE kodu Uvod u organizaciju računara 32
UCS-2 Unicode standard u suštini predstavlja veliku tabelu koja svakom karakteru dodeljuje broj. l Standardi koji opisuju kako se niske karaktera onda prevode u nizove bajtova se dodadno definišu l ISO definiše UCS-2 standard koji jednostavno svaki UNICODE karakter prevodi u odgovarajuća dva bajta l Uvod u organizaciju računara 33
UTF Tekstovi kodirani preko UCS-2 standarda sadrže veliki broj nula, koje obično u operativnim sistemima poput UNIX-a i u programskom jeziku C imaju specijalno značenje. l Iz istog razloga softver koji je razvijen za rad sa dokumentima u ASCII formatu ne može da radi bez izmena nad dokumentima kodiranim preko UCS-2 standarda l Uvod u organizaciju računara 34
UTF A Unicode transformation format (UTF) algoritam koji svakom UNICODE karakteru dodeljuje odredjeni niz bajtova čija dužina varira od 1 do najviše 6. l UTF je ASCII kompatibilan, što znači da se ASCII karakteri zapisuju pomoću jednog bajta, na standardni način. l Uvod u organizaciju računara 35
UTF-8 l Najčešće korišćena varijanta ovog agloritma je UTF-8 koja je dovoljna za zapis svih dvobajtnih UNICODE karaktera l Pored ovoga ISO uvodi i UTF-16, UTF -32, kao i standard UCS-4 Uvod u organizaciju računara 36
Karakteri, Glifovi, Fontovi l Vrlo često se ne pravi jasna razlika izmedju karaktera i njihove grafičke reprezentacije l Grafičku reprezentaciju karaktera nazivamo glifovima (glyph) l Skupove glifova nazivamo fontovima (font ) Uvod u organizaciju računara 37
Karakteri, glifovi, fontovi l Korespodencija izmedju karaktera i glifova ne mora biti jednoznačna l Jedan glif može da predstavi više karaktera (ligature) l Isti karakter može da se predstavlja različitim glifovima u zavisnosti od svoje pozicije u reči Uvod u organizaciju računara 38
WGL 4 Windows uvodi skup karaktera pod imenom Windows Glyph List 4 (WGL 4) koji sadrži preko 600 karaktera koji se koriste u evropskim jezicima l Za razliku od tradicionalnih fontova koji u sebi sadže glifove za karaktere jedne kodne strane, True. Type fontovi koji podržavaju WGL 4 standard sadrže glifove za sve evropske karaktere l Uvod u organizaciju računara 39
- Slides: 39