Professional Documents
Culture Documents
Kodovi
Kodovi
10/14/2018
Ishodi učenja
I1 Definirati binarni sustav, aritmetiku binarnih brojeva s
predznakom
Definirati 8421 kod, princip pariteta i dvodimenzionalni kod
I1 Konvertirati binarne brojeve u dekadske, oktalne i
heksadekadske i obrnuto. Objasniti višestruko ispitivanje
pariteta. Definirati opći princip kodiranja, kod s minimalnom
promjenom i koristiti Hammingov kod za detekciju pogreške.
2
Kodovi
• Općenito: kôd je grupa simbola kojoj se dogovorno
daje značenje
• Binarno kodiranje: pridjeljivanje značenja binarnom
nizu
• kodna riječ : niz bitova kojem se pridaje neko
značenje
• abeceda : skup svih simbola prikazanih kodnim
riječima
• znakovi : elementi abecede
3
Princip binarnog kodiranja
abeceda N binarnih riječi od n bita
K simbola
α 001
β 010
γ 011
Neupotrebljene
100 (zabranjene)
δ riječi
101
ε
110
111
4
Brojevni sustavi i kodovi
Za prikaz K različitih članova abecede
mora biti:
2n K
N = 2n mogućih kombinacija
5
Brojevni sustavi i kodovi
N K 1
N!
N N 1 N 2 VN( K )
N K !
6
Brojevni sustavi i kodovi
7
Dekadski kodovi
• Kodovi za prikaz znamenaka dekadskog
sustava
• Abeceda ima 10 znamenaka, dakle potrebno
nam je 4 bita
• 24 = 16
8
Dekadski kodovi
16!
# mogućih kodova: V (10)
16 29, 059 109
6!
9
Dekadski kodovi
10
Težinski kodovi
• Kodovi kod kojih pozicija svakog bita u nizu
ima svoju numeričku vrijednosti ili "težinu“
• Kao kod pozicijskih brojevnih sustava
• Ima 17 težinskih kodova kod kojih
su sve težine pozitivne i
• oko 70 kod kojih su neke težine i negativne
11 11
Težinski kodovi
Odabrati kodove s povoljnim svojstvima!
Zbroj “težina” brojevnih mjesta = vrijednost
znamenke
• 17 težinskih kodova s pozitivnim težinama
• 71 s jednom ili dvije negativne težine
samokomplementirajući kod:
~ 9-komplement dekadskog broja
zamjenom 0 i 1 u kodnoj riječi
• korisno kod binarno-dekadske aritmetike
12 12
Kod 8421 (BCD)
23 22 21 20
8 4 2 1
• BCD (engl. Binary Coded 0 0 0 0 0
1 0 0 0 1
Decimal) 2 0 0 1 0
• Binarno kodirani dekadski kôd 3 0 0 1 1
4 0 1 0 0
• prvih 10 binarnih brojeva 5 0 1 0 1
6 0 1 1 0
• težine: 8, 4, 2, 1 7 0 1 1 1
• neupotrijebljene 8 1 0 0 0
(zabranjene) kombinacije: 9 1 0 0 1
1 0 1 0
10101111 1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1
13 13
Kod 8421 (BCD)
• Kod ovog koda koristi se prvih deset kombinacija
prirodno binarnog četverobitnog niza
• Svaka decimalna znamenka prikazuje pripadnim
binarnim brojem
• BCD kod naziva se težinski kod, jer bitovi
kombinacije imaju težine 8,4,2,1
• Zbroj težinskih mjesta na kojima je binarna
znamenka 1 daje vrijednost kodirane decimalne
znamenke
14
Kod 8421 (BCD)
• Kod sadrži i kombinaciju 0000 što znači da prekid u
prijenosu podataka može biti prepoznat kao
decimalna znamenka 0
• Možemo zaključiti da ovaj kod nije pouzdan te da su
moguće pogreške u prijenosu podataka
15
Distanca
• Distanca - broj bita koje treba promijeniti za prijelaz
iz jedne kodne riječi u drugu
16
Kod 2421 (Aikenov kod)
2 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
5 1 0 1 1
6 1 1 0 0
7 1 1 0 1
8 1 1 1 0
9 1 1 1 1
17
Kod 2421 (Aikenov kod)
2 4 2 1
• težinski kod 0 0 0 0 0
1 0 0 0 1
~ težine: 2, 4, 2, 1 2 0 0 1 0
• samokomplementirajući 3 0 0 1 1
4 0 1 0 0
kod: 0 1 0 1
0-9, 1-8, 2-7, 3-6, 4-5 0 1 1 0
0 1 1 1
• prvih i zadnjih pet 1 0 0 0
1 0 0 1
4-bitnih brojeva 1 0 1 0
5 1 0 1 1
• neupotrijebljene 6 1 1 0 0
kombinacije: 7 1 1 0 1
8 1 1 1 0
01011010 9 1 1 1 1
18
Kod 2421 (Aikenov kod)
• Posjeduje važno svojstvo da je 1-komplement
svake binarne kodne riječi ujedno i tzv 9-
komplement pripadajuće dekadske znamenke,
koji je definiran kao razlika do najveće znamenke
• Pa tako npr. 1-komplement od 0100 = 1011, a
pripadajuće dekadske znamenke su 4 i 5, pri
čemu je 5, tzv. 9-komplement broja 4
• (Bn - N-1= 101-4-1 = 5)
19
Kod 2421 (Aikenov kod)
• Ako se uzme npr. kodna riječ 0011, kojoj odgovara
znamenka 3, i obavi komplementiranje, dobit će
kodna riječ 1100, koja u ovom kodu odgovara
dekadskoj znamenki 6
• 6 je ujedno i 9-komplement broja 3
• (Bn - N-1 = 101-3-1=6)
• Samokomplementirajući kod
20
Kod XS-3 (Stibitzov kod)
23 22 21 20
8 4 2 1
• kod 8421, 0 0 0 0
0 0 0 1
s "prekoračenjem" (ekscesom) 0 0 1 0
od 3 0 0 0 1 1
1 0 1 0 0
• ne postoji 0000: 2 0 1 0 1
3 0 1 1 0
detekcije prekida kod 4 0 1 1 1
prijenosa 5 1 0 0 0
6 1 0 0 1
-simetrična tablica koda, 7 1 0 1 0
samokomplementirajući 8 1 0 1 1
9 1 1 0 0
kod! 1 1 0 1
1 1 1 0
1 1 1 1
21
Kod XS-3 (Stibitzov kod)
23 22 21 20 23 22 21 20
8 4 2 1 8 4 2 1
0 0 0 0 0 0 0 0 0
1 0 0 0 1 0 0 0 1
2 0 0 1 0 0 0 1 0
3 0 0 1 1 0 0 0 1 1
4 0 1 0 0 1 0 1 0 0
5 0 1 0 1 2 0 1 0 1
6 0 1 1 0 3 0 1 1 0
7 0 1 1 1 4 0 1 1 1
8 1 0 0 0 5 1 0 0 0
9 1 0 0 1 6 1 0 0 1
1 0 1 0 7 1 0 1 0
1 0 1 1 8 1 0 1 1
1 1 0 0 9 1 1 0 0
1 1 0 1 1 1 0 1
1 1 1 0 1 1 1 0
1 1 1 1 1 1 1 1
22
Kod XS-3 (Stibitzov kod)
23
Kod XS-3 (Stibitzov kod)
• Koristi se srednjih deset kombinacija binarnog
četverobitnog niza,
• Odbacuju se prve tri prve i zadnje tri kombinacije
• Ovaj kod razlikuje se BCD kod po tome što nije
težinski, ali je samokomplementirajući
• Druga važna karakteristika je što se u ovom kodu
ne pojavljuje kombinacija s četiri nule ili četiri
jedinice što može biti korisno prilikom otkrivanja
pogrešaka
24
Bikvinarni kod
•težinski 7-bitni kod
(2+5=7)
•Kodne riječi s dvije grupe 0
5
0
0
1
4
0
3
0
2
0
1
0
0
1
bita (2 +5) 1 0 1 0 0 0 1 0
•Kodne riječi s dvije 1 i pet 2 0 1 0 0 1 0 0
3 0 1 0 1 0 0 0
0: otkrivanje pogrešaka 4 0 1 1 0 0 0 0
•Ne ako je pogreška 5 1 0 0 0 0 0 1
6 1 0 0 0 0 1 0
samokompenzirajuća 7 1 0 0 0 1 0 0
•Velika zalihost: 8 1 0 0 1 0 0 0
9 1 0 1 0 0 0 0
~ 10 od 128 mogućih
kombinacija
25
Bikvinarni kod
Koristi sedam bita
Težinski kod s
težinama 5043210
Prva dva
bita pokazuju opseg
znamenke (0 do 4 ili 5
do 9)
prva dva su 01 za
prvih pet znamenki ili
za (5 do 9) oni su 10 26
Grayev kod 0 0 0 0
• kod s minimalnom 0 0 0 1
0 0 1 1
promjenom 0 0 0 1 0
• susjedne kodne 1 0 1 1 0
27
Grayev kod
28
Izgradnja koda – zrcaljenje
“reflektirani” kod
29
Grayev kod
• Brojevi reflektiranog binarnog brojevnog sustava
dobiju se na slijedeći način:
1. znamenke 0 i 1 napišu se jedna ispod druge te se
ispod njih podvuče crta i napišu se zrcalno 1 i 0
2. nakon toga se ispred gornja dva bita napiše 0, a
ispred donja dva bita 1
3. ovako dobivena skupina od četiri dvobitne
kombinacije se napiše još jedanput ispod crte, ali
s zrcalnom slikom
4. opet slijedi dodavanje 0 ispred u gornja četiri
bita, odnosno dodavanje 1 u donja četiri bita
30
Brojevni sustavi i kodovi
31
31
Znakovni kodovi
prikaz slova, znamenki i drugih simbola
upravljački znakovi
32
ASCII KOD
• Najčešće korišten kôd za izmjenu podataka je kod
propisan američkim standardom tzv. ASCII kôd
(American Standard Code for
InformationInterchange)
• Propisuje pridjeljivanje 8 bitne binarne kombinacije
slovima latinske abecede, znamenkama dekadskog
brojevnog sustava i specijalnim znakovima
33
33
ASCII KOD
• Služi za kodiranje znakova:
• 26 velikih slova engleske abecede
• 26 malih slova engleske abecede
• 10 znamenaka
• operatori, interpunkcije, upravljački znakovi
• Za pohranu 1 znaka dovoljan je 1 byte
• Najstariji standard je ASCII (ISO-7 standard): 7
bita za informaciju + 1 bit za paritet
• 27 = 128 različitih znakova
• Sastoji se od specijalnih znakova i od znakova
koji se mogu tiskati
34
ASCII KOD
• kôd propisan američkim standardom, a
propisuje pridjeljivanje 7 bitovnoga binarnog
broja brojevima, slovima i nekim posebnim
znakovima
• ASCII kôd je predviđen za kodiranje ukupno
127 različitih znakova
• Prva 32 kôda ASCII kôda namijenjena su
nadzorno-upravljačkim znakovima, za
upravljanje pisačem i komunikacijom
općenito
• To su znakovi koji se ne mogu otisnuti
35
ASCII KOD
• Ostatak od 96 znakova jesu znakovi koji se mogu
otisnuti i sadržavaju slova, brojke, znakove
interpunkcije itd.
• Skup od 96 znakova je relativno malen pa je
uveden prošireni ASCII kôd (engl. Extended
ASCII) koji rabi osam bitova za prikaz znakova
• Prvih 128 znakova jednako je standardnom ASCII
kôdu
• Preostalih je 128 kôdova namijenjeno novim
znakovima
• ASCII kôd je u širokoj uporabi
36
EBCDIC KOD
• Prošireni binarno kodirani dekadski kôd za
razmjenu podataka ili EBCDIC (engl. extended
binary coded decimal interchange code) jest
norma koju primjenjuje tvrtka IBM u nekim
svojim računalima (npr. AS/400)
• EBCDIC nije u upotrebi u osobnim računalima
37 37
ASCII KOD
• ASCII omogućava izmjenu informacija računalima
i računalnim programima
• Osnovni ili standardni ASCII set koristi 7 bitova
za svaki kod (decimalno 0 do 127 ili 00H do 7FH)
• Prošireni ASCII set koristi 8 bitova za svaki kod,
(decimalno 128 do 255 ili 80H do FFH)
• U standardnom ASCII setu prva 32 znaka
omogućavaju komunikaciju i kontrolne kodove za
printer
38
ASCII KOD
• Preostalih 96 kodova se pridružuju znakovima
interpunkcije, cijelim brojevima 0 do 9, velikim i
malim slovima abecede.
• Prošireni ASCII kod, 128 do 255, se pridružuje
različitim skupovima znakova koje će definirati
proizvođači računala ili razvojni inženjeri
programske podrške
39
ASCII KOD
npr.
A = 100 0001 = 41 H
a= 110 0001 = 61 H
* = 010 1010 = 2A H
40
LITERATURA:
• Uroš Peruško: Digitalni sustavi
• Str. 47 - 68
41
Hvala na pažnji!