& ASCII kodovi

 

 

Standardni ASCII set karaktera sadrži 128 različitih kodova koji reprezentuju različite vrste znakova. Većina računara koristi 8-bitnu reprezentaciju ASCII karaktera, pri čemu je H.O. bit postavljen na 0 (umesto izvornog 7-bitnog koda).

ASCII zapis se jednostavno deli u 4 grupe korišćenjem bitova 5 i 6 na sledeći način:

Bit 6   Bit 5       Grupa karaktera

   0       0              Kontrolni karakteri

   0       1              Cifre & Interpunkcijski znaci

   1       0              Velika slova & Specijalni znaci

   1       1              Mala slova & Specijalni znaci

 

 

Treba imati na umu sledeće činjenice:

 

s Kod blanko znaka manji je od koda ma kog slova, cifre i uopšte, ma kog grafičkog  simbola;

 

s Kodovi cifara uređeni su u uzastopni rastući redosled. Zato kada je

zadovoljena nejednakost:

kod('0')<=kod(znak)<=kod('9')

znamo da je znak cifra i da važi:     kod(i)=kod('0')+i; gde je 0<=i<=9.

Primetimo da je kod('0') nije jednak 0.

 

s Kodovi velikih slova latinice A..Z (26 slova) uređeni su saglasno abecedi i takođe

se ređaju bez razmaka. Zato kada je zadovoljena nejednakost:

kod('A')<=kod(znak)<=kod('Z')

znamo da je znak veliko slovo i da je kod i-tog velikog slova (pri numeraciji od 0)

jednak zbiru kod('A')+i;

 

s Analogno tvrđenje važi za mala slova;

 

 

1. Dekodirajte sledeće poruke zabeležene u ASCII kodu heksadekadno:

a) 6C 75 78 75 72 79 20 63 61 72 _________________________________

b) 41 4E 41 4C 59 53 49 53 _________________________________

c) 31 39 38 39 31 39 39 30 31 39 39 31 _________________________________

d) 53 61 73 74 61 6E 61 6B 20 6A 65 20 69 73 70 72 65 64 20 41 6C 62 61 6E 69 6A 65   20 75 20 73 72 65 64 75 20 75 20 32 33 2E 33 30 _______________________________

 

2. Koju logičku operaciju treba izvršiti da bi se konvertovala mala slova u velika?

________________ Za konverziju velikih u mala slova? _______________ Za alternativnu

promenu - velikih u mala, a malih u velika? __________________

 

3*. Napisati funkcije koje za dati karakter vraćaju znak koji se dobija po sledećim pravilima:

a) UVELIKA za malo slovo vraća odgovarajuće veliko slovo, a drugi karaktere vraća

bez promene;

b) UMALA koja konvertuje velika slova u mala;

c) UCONTRA koja konvertuje velika slova u mala, mala u velika, a ostale znake vraća

bez promene;

d) SIFRA koja za svaki znak čiji je ASCII kod >11d vraća znak čiji je kod za 1 manji.

Zatim napisati pro gram koji korišćenjem ovih funkcija konvertuje ulazni string u skladu sa

pravilom koje izabere korisnik.