Você está na página 1de 0

2001, Szikora Zsolt

http://hazam.eu/


2001, Szikora Zsolt 2 / 49 Szmrendszerek
1 Tartalomjegyzk
1 Tartalomjegyzk...................................................................................................................... 2
2 Bevezets................................................................................................................................. 4
3 J elfeldolgozsi alapismeretek.................................................................................................. 5
3.1 Mintavtel ........................................................................................................................ 5
3.2 Kvantls......................................................................................................................... 7
3.3 A/D s D/A konverzi..................................................................................................... 8
4 Szmrendszerek....................................................................................................................... 9
4.1 Tzes (DECimlis) szmrendszer .................................................................................... 9
4.1.1 Egy decimlis szm rtelmezse............................................................................. 9
4.2 Kettes (BINris) szmrendszer...................................................................................... 10
4.2.1 Egy binris szm rtelmezse [BIN DEC] ....................................................... 10
4.2.2 Szm talaktsa kettes szmrtendszerbe [DEC BIN]...................................... 10
4.3 Tizenhatos (HEXadecimlis) szmrendszer.................................................................. 12
4.3.1 Egy hexadecimlis szm rtelmezse [HEX DEC].......................................... 12
4.3.2 Szm talaktsa tizenhatos szmrendszerbe [DEC HEX]............................... 13
4.4 A kettes s a tizenhatos szmrendszer kapcsolata......................................................... 14
4.4.1 HEXBIN talakts............................................................................................ 14
4.4.2 BINHEX talakts............................................................................................ 14
4.5 Nyolcas(OCTalis) szmrendszer ................................................................................. 15
4.6 Gyakorl feladatok........................................................................................................ 16
4.7 Gyakorl feladatok megoldsa...................................................................................... 18
5 Egyszer alapmveletek klnbz szmrendszerekben...................................................... 20
5.1 Mveletek decimlis szmokkal.................................................................................... 20
5.2 Binris szmok sszeadsa............................................................................................ 20
5.3 Binris szmok kivonsa............................................................................................... 20
5.4 Binris szmok szorzsa................................................................................................ 20
5.5 Mveletek hexadecimlis szmokkal ............................................................................ 20
6 Kdok.................................................................................................................................... 21
6.1 Kdolsi alapfogalmak.................................................................................................. 21
6.2 Eljeltelen egszek kdolsa......................................................................................... 24
6.2.1 Egyszer binris kd............................................................................................. 24
6.2.2 BCD kd................................................................................................................ 25
6.2.3 Egylpses kdok.................................................................................................. 27
6.2.4 Gyakorl feladatok................................................................................................ 29
6.2.5 Gyakorl feladatok megoldsa.............................................................................. 30
6.3 Eljeles egszek kdolsa............................................................................................. 31
6.3.1 Eljel-Nagysg kd............................................................................................... 31
6.3.2 Egyes komplemens kd......................................................................................... 32
6.3.3 Kettes komplemens kd......................................................................................... 32
6.3.4 Eltolt binris kd................................................................................................... 34
6.3.5 Eljeles egsz-brzolsok sszevetse................................................................ 34
6.3.6 Gyakorl feladatok................................................................................................ 36
6.3.7 Gyakorl feladatok megoldsa.............................................................................. 37
6.4 Vals szmok brzolsa............................................................................................... 38
6.4.1 Fixpontos szmbrzols....................................................................................... 38
2001, Szikora Zsolt 3 / 49 Szmrendszerek
6.4.2 fix-point-reals.sdr .................................................................................................. 38
6.4.3 Lebegpontos szmbrzols................................................................................ 38
6.4.4 floating-point-reals.sdr .......................................................................................... 39
6.4.5 Gyakorl feladatok................................................................................................ 42
6.4.6 Gyakorl feladatok megoldsa.............................................................................. 43
6.5 Alfanumerikus kdok.................................................................................................... 44
6.5.1 ASCII ..................................................................................................................... 44
6.5.2 Kiterjesztett ASCII; kdlapok............................................................................... 46
6.5.3 UNICODE............................................................................................................. 47

2001, Szikora Zsolt 4 / 49 Szmrendszerek
2 Bevezets
Kedves olvasm,
A digitlis ramkrk ahogy szinte minden mszaki rendszer mkdse vgl is annyibl ll,
hogy jeleket kapnak a klvilgbl, s jeleket kldenek a klvilg fel.
Hogy ezekkel a jelfeldolgoz rendszerekkel megismerkedhessen, elszr egy kicsit kzelebbrl
meg kell ismerkedne magukkal a jelekkel. Ha a jelekkel mr kellen bartsgos viszonyba
kerlt, mg egy kitrt kell tennnk a szmrendszerek vilgba.
Ha a szmrendszereket is megismertk, kezdhetjk a kdrendszerek megismerst (a
kombincis hlzatok ugyanis mint ezt majd hamarosan ltni fogjuk mind valamifle
kdvltknt mkd ramkrk).
A digitlis ramkrk elemi mveletvgz egysgeinek mkdse a logikai algebrn alapul, ezrt
a kombincis hlzatok kezelshez a logikai algebrt is segtsgl kell hvnia. Ezzel mr el is
jutott abba az llapotba, mely e modul vgs clja. A vgs cl, hogy megbartkozzon az
egyszer kombincis hlzatokkal.
Ha ezt elri, kt dologra lesz kpes:
1. Kpes lesz egy adott kombincis hlzat mkdst rtelmezni, vagy akr fordtva:
2. Egy adott mkdst megvalst optimlis kombincis hlzatot kpes lesz megtervezni.
Kalandra fl!
2001, Szikora Zsolt 5 / 49 Szmrendszerek
3 Jelfeldolgozsi alapismeretek
A jel fogalmn ltalban valamilyen jellemz (sly, tvolsg, hmrsklet, ) rtknek vagy
rtkvltozsnak nagysgt rtjk. Valaminek a fggst valami mstl.
A vals vilgban szinte mindig olyan jelekkel tallkozunk, melyek az idtl fggnek. Ha egy jel
idben s nagysgt tekintve is folytonos, akkor analg jelnek nevezzk.
Time (s)
1.00m 4.00m 7.00m 10.00m
O
u
t
p
u
t
0.00
10.00
20.00
30.00

3-1. bra Analg jel
A digitlis rendszerek mkdst manapsg idben s nagysgt tekintve is darabos, azaz nem
folytonos rtelmezsi tartomny s rtkkszlet teht mindkt rtelemben diszkrt jelek
jellemzik. Egy analg jel digitliss alaktst kt lpsben tudunk elvgezni.
Elszr daraboss tesszk a jelet idben - ezt a mveletet nevezik mintavtelnek. A mintavett jel
mr nem mrhet brmikor, de sajnos mg felvehet brmilyen rtket.
A jel nagysgnak vgtelen sok lehetsge szmtstechnikai eszkzeinkkel sajnos nem
kezelhet. Gondoskodunk teht arrl is, hogy a mintavett jel nagysga se vehessen fel brmilyen
rtket ezt a kvantlssal rhetjk el.
3.1 Mintavtel
Azt a folyamatot, melynek sorn az idben folytonosan vltoz jelbl szakaszos lefolys, idben
darabos, diszkrt jelt kpznk, mintavtelnek nevezzk. A mintavtel sorn a vizsglt jel
idben folyamatos jellege elvsz, ez azonban nem jelenti azt, hogy az eredeti jel lefolysrl kt
szomszdos mintavteli idpont kztt tudhatunk semmit. Ez els hallsra taln furcsnak tnik,
hiszen a mintavtellel egy folyamatosan rendelkezsre ll informciforrst szndkosan csak
idnknt tesznk elrhetv. Hogy rzkeltesse a mintavtel elnyt, fontolja meg az albbi
pldt.
Kpzelje magt egy srgyrba! A kellen finom vgtermk ltrehozsnak rdekben egyszerre
tbb tartlyban is kell a kszl ned hmrsklett figyelnie. Biztosan nem lesz szksge arra,
hogy msodpercenknt minden egyes tartly hfokt lekrdezze, hiszen ennyi id alatt a
tartlyokban pihen tbb hektoliteres folyadkmennyisg hfoka szinte semmit sem tud vltozni.
A tartlyok hmrskleti tehetetlensge megengedi, hogy csak idnknt vegynk mintt a
folyamatbl. ltalban elmondhat, hogy a lehet legkisebb mintavteli frekvencia
krnyezetben rdemes mkdtetni a mintavev rendszereket, hiszen minden mintavtel
kltsggel jr.
2001, Szikora Zsolt 6 / 49 Szmrendszerek
Time (s)
1.00m 4.00m 7.00m 10.00m
O
u
t
p
u
t
0.00
10.00
20.00
30.00

3-2. bra Analg jel mintavtelezse
3-3. bra

Time (s)
1.00m 4.00m 7.00m 10.00m
O
u
t
p
u
t
0.00
10.00
20.00
30.00

3-4. bra Mintavett jel
Ha telefonon keresztl beszlgetnk egy ismersnkkel, akkor nincs szksgnk az audio CD-k
esetn hasznlatos, j hangminsget biztost msodpercenknti 44 056 darab mintra. A
hangtvitelhez ltalban minden nemzet telefontrsasga kb. 8 kHz-es mintavteli frekvencit
hasznl. Ha megelgsznk a kicsit gyengbb minsg, tompbb hangzst eredmnyez
Internetes nemzetkzi hvsszolgltatssal is, akkor termszetesen olcsbb tarifk mellett a
mintavteli gyakorisg lecskken 6,8 kilominta/sec-ra. Arra azonban vigyzni kell, hogy a vett
mintk gyakorisga ne legyen tl kicsi. Ekkor ugyanis a mintavett jel mr nem llthat vissza
megfelel minsgben. Pl. a beszd mr nehezen rthetv vlik.
Minl gyakoribb a mintavtel, annl pontosabban helyrellthat majd a vett mintkbl az eredeti
folytonos jel. Nem kell azonban a mintavteli gyakorisgot a vgletekig fokoznunk a tkletes
visszallthatsg elrshez. Meghatrozhat az a legkisebb mintavteli gyakorisg, ami
semmikppen sem jr informcivesztssel, a gyakorlatban azonban knnyen megeshet, hogy a
technolgia mg ennl is ritkbb mintavtelt tesz lehetv. Shannon ttele kimondja, hogy egy
svkorltos, f
max
maximlis frekvencij sszetevt is tartalmaz jel mintavtelezsnek f
S

gyakorisga mindig legalbb ktszer akkora kell legyen, mint az f
max
frekvencia. Ebben az
esetben az eredeti jel a mintavett rtkek sorozatbl egyrtelmen helyrellthat.
Tmren: a mintavett jel visszallthatsgnak felttele:
max
f f
S

Az audio CD hangrendszerben azrt alkalmazzk a 44 ksps (=kilo-samle-per-secundum)
mintavteli gyakorisgot, mert mg egy rzkeny fl ember sem kpes a 20 kHz-nl gyakoribb
hangrezgseket (magasabb hangokat) rzkelni. A vlasztott f
s
rtke Shannon ttele szerint
lehetv teszi az eredeti hangjel visszalltst akr a 22 kHz-es komponenseivel egytt is.
A telefniban azrt hasznlnak ennl jval kisebb mintavteli gyakorisgot, mert nyilvn nincs
szksg a cseng hangok tvitelre; az emberi beszd jl rthet akkor is, ha csak a 4 kHz-es s
annl kisebb frekvencij komponenseit halljuk, st az rthetsg akkor is megmarad, ha csupn
3,4 kHz-es tartomnyig biztostjuk az tvitelt.
2001, Szikora Zsolt 7 / 49 Szmrendszerek
3.2 Kvantls
A kvantls sorn nem a jel idbeni lefolyst mdostjuk; a mintavett jel nagysgt tesszk
daraboss. A kvantls a folytonos rtk jelbl olyan rtkfolyamot hoz ltre, melynek
rtkkszlete egymstl elklnlt ms szval diszkrt rtkekbl ll. Az eredmny a
digitlis jel
Time (s)
0.00 5.00m 10.00m 15.00m 20.00m
a
.

A
n
a
l
o
g
0.00
32.00
b
.

S
a
m
p
l
e
d
0.00
4.00
8.00
12.00
16.00
20.00
24.00
28.00
32.00
c
.

D
i
g
i
t
i
z
e
d
0.00
4.00
8.00
12.00
16.00
20.00
24.00
28.00
32.00

3-5. bra
A kvantls sorn a feladat ismeretben kivlasztjuk az rtk feldolgozshoz alkalmas
felbontst. Ha pldul egy nagy fmtartlyban reduktv technolgival kszl bor hfokt kell
megmrnnk, akkor minden bizonnyal felesleges lenne 1/100 C pontossggal kvantlni a
hmrskleti adatokat ugyanakkor az is knnyen belthat, hogy ha csak 10 C felbontssal
kvantljuk a l hfokt, akkor lnyeges hfokvltozsokrl sem vesznk majd tudomst, s az
erjeds tl gyorsan vagy lassan kvetkezhet be.
A lineris kvantls sorn a folytonos rtk eredeti jelet sszevetjk az n. kvantummal (q), s
meghatrozunk azt, hogy a jel hnyszorosa a kvantumnak. A kvantls sorn teht a jel
nagysghoz egsz szmokat rendelnk. A 3-5. bra pldja kvantlst szemlltet, ahol a
feszltsg-kvantum rtke 2 V. A kvantlt jel valjban egy szmsor az brn azonban a
szemlletessg kedvrt a szmsornak a kvantummal megszorzott rtke tallhat. Az egyes
szmrtkek a 3-6. bra mutatja.
A kvantls sorn a jel nagysgnak olyan amplitdj ingadozsa, mely kisebb a kvantum
felnl, elveszhet. A hibsan 10 C-nyira vlasztott kvantum lehetv tenn a bor +- 5 C
hmrskletvltozst anlkl, hogy ezt rzkelnnk.
A kvantlt jel helyrelltsa gyakorlatilag azt jelenti, hogy a kvantum egsz-szmszorosait lltjuk
el. Eredmnyknt teht darabos rtkkszlet, hirtelen rtkugrsokat tartalmaz jeleket kapunk.
A helyrelltott jel simtst analg szrk vgzik.

2001, Szikora Zsolt 8 / 49 Szmrendszerek

3-6. bra
3.3 A/D s D/A konverzi
Az analg-digitlis talakts sorn az idben s rtkben egyarnt folytonos lefolys jelbl
mintkat vesznk, s a vett mintkat kvantljuk. Ezt a mveletet az analg-digitlis talakt
(analog to digital converter =ADC) ramkrk vgzik.
A digitlis-analg talakts sorn a jelet reprezentl szmsort alaktjuk t ismt idben s
rtkben egyarnt folytonos jell. Ezt a mveletet a digitlis-analg talakt (digital to analog
converter =ADC) ramkrk vgzik.
Az ADC s DAC egysgek jellemzivel, alkalmazsval a Digitlis J elfeldolgozs modul sorn
ismerkedhet meg rszletesebben.
A digitlis ramkrk mint ez az elzekbl is lthat volt szmrtkekkel dolgoznak. A
szmokat e rendszerek nem a tzes szmrendszer hasznlatval kezelik. Ismtlsknt tekintse t
s egsztse ki a szmrendszerekrl korbban (a szmtstechnikai alapok modulban) tanultakat a
kvetkez fejezet ttanulmnyozsval.
2001, Szikora Zsolt 9 / 49 Szmrendszerek
4-1. bra
4 Szmrendszerek
4.1 Tzes (DECimlis) szmrendszer
Ezt mindannyian jl ismerjk.
Alapszma (radix-a) Tz
Az rvnyes szmjegyek (digitek) halmaza {0;1;2;3;4;5;6;7;8;9}
4.1.1 Egy decimlis szm rtelmezse
Egy tetszleges szmrendszerben
felrt szm rtelmezse azt
jelenti, hogy a szmot felrjuk
tzes szmrendszerben. A
decimlis szmok rtelmezse
sorn termszetesen magukat az
rtelmezend szmokat kapjuk
meg eredmnyknt. A dolognak
mgis sok haszna van, mert
megismerhetjk a hely, a helyi
rtk, a rszrtk s a szmrtk
fogalmt.
A felrt szm tartalmazza az
egsz- illetve trtrszt elvlaszt
szimblumot. Magyarorszgon
erre a vessz, angol
nyelvterleten pedig a pont
hasznlatos. Ha ezt az elvlaszt
szimblumot nem tartalmazza a felrt szm, akkor a szm jobb szlre kpzeljk. (Az angol
jellsmd megengedi azt is, hogy a trteket oly mdon brzoljuk, hogy a nulla rtk
egszrszt nem tntetjk fl, azaz a 0,42 szmrtk helyett .42 is hasznlatos.)
Megjegyzs: A komoly programozsi nyelvek mindig tizedes pontot hasznlnak.
A tizedes vessztl kzvetlenl balra lv digit a nulladik helyen tallhat. A tle balra lv
szmjegy az egyes, ettl balra pedig a kettes helyen tallhat s gy tovbb. A tizedes vessztl
kzvetlenl jobbra lv szmjegy a -1, a tle jobbra lv pedig a -2 helyen tallhat, s gy
tovbb. Ez ugyangy van minden egyes szmrendszer esetben.
Az egyes helyekhez tatoz helyi rtkeket oly mdon kapjuk meg, hogy a szmrendszer
alapszmt a helyedik hatvnyra emeljk: H=radix
Hely
.
A tzes szmrendszer radixa (alapszma) tz, ezrt az egyes helyirtkek egszrsz esetn jobbrl
balra haladva sorra 1; 10; 100; 1000; ; trtrsz esetn pedig (balrl jobbra haladva) 0,1; 0,01;
0,001;
Az egyes digitek a szm rtknek egy-egy meghatrozott rszrtkt kpviselik. A rszrtk
meghatrozshoz a szmjegy sajt rtkt kell megszoroznunk a szm helye ltal meghatrozott
helyi rtkkel. R=digit*H .
szm: - 4 7 2 , 4 2
hely 2 1 0 -1 -2
helyi rtk
(H=radix
hely
)
1
2
=100 10
1
=10 10
0
=1 10
-1
=0,1 10
-2
=0,01
Rszrtk(R=digit*H) - 4*100 7*10 2*1 4*0,1 2*0,01
ELJ EL
EGSZRSZ TRTRSZ
digit
digit
digit digit digit
szmrtke: - 4 7 2 , 4 2
SSZEGZS
TIZEDES VESSZ
(Egsz/Trtrsz elvlasztja)
Legnagyobb Helyirtk Digit
(MSD =Most Significant Digit)
Legkisebb Helyirtk Digit
(LSD =Least Significant Digit)
2001, Szikora Zsolt 10 / 49 Szmrendszerek
4-2. bra
A szm rtkt gy kapjuk meg, hogy az egyes rtkrszeket sszegezzk. rtk = R .
A szm rtknek eljelt minden egyes szmrendszerben azonos mdon brzoljuk
Pozitv szmok el vagy nem runk semmit, vagy egy + szimblumot tesznk.
Negatv szmok el mindig kitesznk egy - szimblumot.
4.2 Kettes (BINris) szmrendszer
Leginkbb ezt hasznljk a digitlis ramkrkkel mkd rendszerek. A szmjegyek lersra
csupn kt szimblumot hasznl. A kettes szmrendszert alkot szmjegyeket binris digiteknek
(bit-eknek) nevezzk.
Alapszma (radix-a) Kett
Az rvnyes szmjegyek (digitek) halmaza {0;1}
A binris digiteket bit-eknek nevezzk. A legnagyobb helyi rtk bit neve MSB (Most
Significant Bit). A szablyosan felrt bitsorozatnak teht bal oldali els bitjt nevezzk MSB-nek.
A legkisebb helyirtk bit angol elnevezsnek rvidtse: LSB (Least Significant Bit).
Megjegyzs:
A legtbb assemblyben a binris konstansokat egy b betvel jelljk, amit kzvetlenl
a szm LSB-je utn kell rni. Pl. 10111001B, 111001b
4.2.1 Egy binris szm rtelmezse [BIN DEC]
A szm rtelmezst a 4-2. bra
mutatja. Ha fejben szmolunk, akkor
termszetesen nem szoks a nullval
szorzst elvgezni.
Sokkal praktikusabb mdszer, ha
minden egyes rtk bit alatt vagy
fltt feltntetjk a helyhez tartioz
helyi rtket, majd egyszeren
ezeket a helyirtkeket sszegezzk.
Egy plda: az 101011,11
(2)
szm
rtelmezse:
1 0 1 0 1 1 , 1 1
32 - 8 - 2 1 0,5 0,25
Az eredmny teht
32+8+2+1=43,75
(10)
nek addik.

4.2.2 Szm talaktsa kettes szmrtendszerbe [DEC
BIN]
A modul teljestse sorn feladata lesz az is, hogy kettes szmrendszerben brzoljon decimlis
formban adott rtkeket. Ez a mvelet viszonylag egyszeren megvalsthat, ha biztos benne,
hogy hiba nlkl tud szmokat maradkosan osztogatni kettvel. :-)
A tzes szmrendszerben megadott szmok egszrszt s trtrszt kln-kln kell talaktania.
szm: + 1 1 0 1 , 0 1
hely 3 2 1 0 -1 -2
helyi rtk
(H=radix
hely
)
2
3
=8 2
2
=4 2
1
=2 2
0
=1 2
-1
=0,5 2
-2
=0,25
Rszrtk
(R=digit*H)
+ 1*8 1*4 0*2 1*1 0*0,5 0*0,25
ELJ EL
EGSZRSZ TRTRSZ
digit digit digit
digit
digit
szmrtke: +13,25
SSZEGZS
KETTEDES VESSZ
(Egsz/Trtrsz elvlasztja)
Legnagyobb Helyirtk Bit
(MSB =Most Significant Bit) Legkisebb H Bit
(LSB =Least ...)
digit
2001, Szikora Zsolt 11 / 49 Szmrendszerek
4.2.2.1 Egszek talaktsa
A szmot addig osztogatjuk maradkosan 2-vel, amg az 0-ra le nem fogy. Az oszts eredmnyt
mindig az elz szm al rjuk, a maradkot pedig egy kln oszlopba, az eredmny mell. Az
eredmnyt visszafel olvassuk ki, teht a legutoljra keletkezett maradkbit az MSB.
Pl. 177
(10)
=?
(2)
177 | :2
--------- Az eredmny: (000) 1011 0001(2)
88 | 1 LSB
44 | 0
22 | 0
11 | 0
5 | 1
2 | 1
1 | 0
0 | 1 MSB
0 |(0) innnen mr mr felesleges folytatni!
0 |(0)
0 |(0)

4.2.2.2 Trtek talaktsa
A szm trtrszt addig szorozgatjuk 2-vel, mgnem nullt kapunk eredmnyl. A duplzott
rtkek egsz rszei alkotjk majd a kettes szmrendszerben felrt szm szmjegyeit.
Pl. 0, 546875
(10)
=?
(2)

2* , 546875
---------- Az eredmny: 0,1000 111(0 00)(2)
MSB 1 | 9375
0 | 1875
0 | 375
0 | 75
1 | 5
1 | 0
LSB 1 | 0
(0)| 0 innnen mr mr felesleges folytatni!
(0)| 0
(0)| 0
Rossz hr, hogy a folyamatnak nem mindig van vge: ha egy nulla s egy kztti szm valamely
(pl. tzes) szmrendszerben szp kerek formt mutat, az mg nem garancia arra, hogy ms
szmrendszerben is hasonlan, kerek eredmnyt kapunk. Elfordul, hogy vgtelen szakaszos trt
keletkezik.
Gondoljon arra, hogy pl. az -ot tzes szmrendszerben 0,333-nak rjuk, ami egy vgtelen
hossz trt, hrmas szmrendszerben viszont nyilvn kereken: 0,1
(3)
lesz!
Tanulsg: ha az talakts sorn egy kellemetlen vgtelen szakaszos trteket kapjuk, akkor a
konverzit abba kell hagyni! Ezt vagy a szakaszossg felismersekor, vagy a kvnt pontossg
elrsekor kell megtennnk.
Egy plda erre: 0,4
(10)
=?
(2)


2001, Szikora Zsolt 12 / 49 Szmrendszerek
4-3. bra
2* , 4
---------- Az eredmny: 0,0110 0110 0110 0110 ...(2)
MSB 0 | 8
1 | 6
1 | 2
0 | 4
0 | 8 innnen mr mr felesleges folytatni!
1 | 6
LSB 1 | 2
0 | 4
4.3 Tizenhatos (HEXadecimlis) szmrendszer
A tizenhatos szmrendszer a lnyegben a kettes szmrendszerben felrt bitsorozatok tmrtett
felrsi mdjnak tekinthet. Arra hasznljuk, hogy a viszonylag hossz bitsorozatokat rviden,
ttekintheten jelentsk meg.
Alapszma (radix-a) Tizenhat
Az rvnyes szmjegyek (digitek) halmaza {0;1;2;3;4;5;6;7;8;9;A;B;C;D;E;F}
(A =tz, B =tizenegy, F =tizent)
Megjegyzs: A kilencnl nagyobb rtk hexa digiteket szoks kisbetkkel is jellni.
A programozsi nyelvekben a hexadecimlis szmkonstansokat kt mdon szoks jellni:
Bevezet szimblumnal: valamilyen klnleges karakter vezeti be tizenhatos
szmrendszerbeli rtket. Turbo Pascal nyelvben: $c4f2; C nyelven: 0xc4f2
Lezr szimblummal: a hexa konstansok is decimlis szmkarakterrel kezddnek, s a
specilis h lezr karakterrel fejezdnek be. A legtbb assemblyben: 0c4f2h egy
hexa konstans (a szm el rt nullra azrt van szksg, hogy a fordtprogram felismerje,
hogy ez egy szmkonstans hiszen a bevezet nulla nlkli c4f2h minden
programozsi nyelven valamilyen objektum (pl. vltoz) neveknt lenne rtelmezhet.
4.3.1 Egy hexadecimlis szm rtelmezse [HEX DEC]
Az HEXDEC talaktst hasonlan,
hajtjuk vgre, ahogyan a BINDEC
konverzit vgeztk. (4-3. bra)
Arra kell csupn figyelnie, hogy most
az egyes helyi rtkek a hexadecimlis
vessztl egszek fel (balra)
elindulva rendre 1; 16; 256; 4096;
65536 lesz. A trtrszekhez
termszetesen ezeknek a szmoknak a
reciprokjait rendeljk helyi rtkknt:
0,0625; 0,00390625;


szm: + 3 C 2 , F 8
hely 2 1 0 -1 -2
helyi rtk
(H=radix
hely
)
16
2
=256 16
1
=16 16
0
=1 16
-1
=0,0625
16
-2
=0,0039
0625
Rszrtk(R=digit*H) + 3*256 12*16 2*1 15*0,0625
8 *
0,00390625
ELJ EL
EGSZRSZ TRTRSZ
digit
digit
digit digit digit
szmrtke: +962,96875
SSZEGZS
(Egsz/Trtrsz elvlasztja)
LegnagyobbHelyirtkDigit
(MSD =Most Significant Digit)
LegkisebbHelyirtkDigit
(LSD =Least Significant Digit)
2001, Szikora Zsolt 13 / 49 Szmrendszerek

4.3.2 Szm talaktsa tizenhatos szmrendszerbe [DEC HEX]
Ez a mvelet mr nehezebb, mint a kettes szmrendszerbe trs. Csak akkor jrhat sikerrel, ha
biztos benne, hogy hiba nlkl tud szmokat maradkosan osztani illetve osztani tizenhattal. Ez
nem is olyan knny! Mg szerencse, hogy vannak szmolgpek! ;-)
A szmok egszrszt s trtrszt kln-kln kell talaktania.
4.3.2.1 Egszek talaktsa
A szmot addig osztogatjuk maradkosan 16-tal, amg az 0-ra le nem fogy. Az oszts eredmnyt
mindig az elz szm al rjuk, a maradkot pedig egy kln oszlopba, az eredmny mell. Az
eredmnyt visszafel olvassuk ki, teht a legutoljra keletkezett maradkbit az MSD (Most
significant Digit). Most arra is vigyznia kell, hogy az esetleg decimlisan kt digittel brzolt
(1015 kztti) maradkokat a nekik megfelel egyetlen betszimblummal helyettestse!
Pl. 962
(10)
=?
(16)
962 | :16
--------- Az eredmny: (000) 3C2(16)
60 | 2 LSD
3 | 12 C
0 | 3 MSD
0 |(0) innnen mr mr felesleges folytatni!
0 |(0)
0 |(0)
4.3.2.2 Trtek talaktsa
A szm trtrszt addig szorozgatjuk 16-tal, mgnem nullt kapunk eredmnyl. A szorzs
eredmnynek egszrszeit kln oszlopba lerva megkapjuk a tizenhatos szmrendszerben felrt
szm szmjegyeit. Most is vigyznia kell, hogy az esetleg decimlisan kt digittel brzolt
(1015 kztti) egszrszeket a nekik megfelel egyetlen betszimblummal helyettestse!
Pl. 0,96875
(10)
=?
(16)

16* , 96875
---------- Az eredmny: 0,F8(000)(16)
MSD F 15 | 5
LSD 8 | 0
(0)| 0 innnen mr mr felesleges folytatni!
(0)| 0
(0)| 0
Termszetesen ilyenkor sem garantlt, hogy a trtrsz talaktsval vges szm lpsen bell
vgznk. :-(
Pl. 0,62
(10)
=?
(16)

16* , 62
---------- Az eredmny: 0,9 EB851 EB851 EB...(16)
MSD 9 | 92
E 14 | 72
B 11 | 52
8 | 32
5 | 12
1 | 92 innnen mr mr felesleges folytatni!
E 14 | 72
B 11 | 52
2001, Szikora Zsolt 14 / 49 Szmrendszerek
Szp dolog mindez, mondhatjk, de ha egyszer a digitlis ramkrk mkdse a kettes
szmrendszeren alapul, akkor mirt kell mg a tizenhatos szmrendszerrel is szenvednnk? Nos,
a kvetkez rszek ppen erre ad vlaszt.
4.4 A kettes s a tizenhatos szmrendszer kapcsolata
A kettes s a tizenhatos szmrendszer kztti megfeleltets akkor a
legegyszerbb, ha csupn egyetlen hexa digithez kell kettes szmrendszerbeli
rtkeket rendelnnk.
Ilyenkor a szakemberek a jobb oldalon lthat segd tblzatot hasznljk.
Pl.: C
(16)
=1100
(2)
Megjegyzs: a segdtblzatot egy szakember fejbl hasznlja. A binris
bitngyeseket pillanatok alatt ki lehet tallni. Azt kell, eldntennk, hogy az
brzoland 0 15 kztti szmrtk binris rszrtkei kztt szerepelnek e:
a 8-4-2-1 rszrtkek.
Ha igen, akkor egy 1-est runk a megfelel helyi rtkhez, ellenben 0-t.
A kettes s binris szmrendszer kapcsolata ms esetekben is hasonlan egyszer, olvassa csak el
a hexbin s a binhex talakts mdszert.
4.4.1 HEX BIN talakts
Az talakts most is a jobb oldali segdtblzat felhasznlsval trtnik. Az egyes hexa
digiteket trjuk binris bitngyesekk, majd a bitngyeseket egymshoz illesztjk. (Az gy
kpzett bitngyeseket nha tetrdnak nevezik, angol elnevezse pedig nibble a sz eredeti
jelentse kb.: egy kis haraps.)
Az eredmny mr kialakul a bitngyesek egymshoz illesztsvel is, igazn akkor lesz szp, ha
az egszrszhez tartoz bitngyeseket baloldalon bevezet felesleges nullkat trljk, s
ugyangy jrunk el a trtrszt lezr nullkkal is.
Pl. 1AB2,4C
(16)
=?
(2)

1 A B 2 , 4 C
0001 1010 1011 0010 , 0100 1100

Eredmny: 1 1010 1011 0010 , 0100 11
(2)

4.4.2 BIN HEX talakts
Az talakts most is az emltett segdtblzat felhasznlsval trtnik. Az egszrszt a
trtrsztl elvlaszt binris vessztl jobbra s balra elindulva ngyes bitcsoportokat alaktunk
ki. Szksg esetn az egszrszt balrl, a trtrszt pedig jobbrl kiegsztjk nullkkal. A
kialaktott bitngyesekhez tartoz hexa digiteket egymshoz illesztve mr ki is alakult a szm 16-
os szmrendszerben felrt alakja.
Pl.: +110 101 011 00 10 , 01 00 11
(2)
=?
(16)

0001 1010 1011 0010 , 0100 1100
1 A B 2 , 4 C
HEX DEC
BIN
8-4-2-1
0 0 0 0 0 0
1 1 0 0 0 1
2 2 0 0 1 0
3 3 0 0 1 1
4 4 0 1 0 0
5 5 0 1 0 1
6 6 0 1 1 0
7 7 0 1 1 1
8 8 1 0 0 0
9 9 1 0 0 1
10 A 1 0 1 0
11 B 1 0 1 1
12 C 1 1 0 0
13 D 1 1 0 1
14 E 1 1 1 0
15 F 1 1 1 1
2001, Szikora Zsolt 15 / 49 Szmrendszerek
Eredmny: +1AB2,4C
Rgebben a gyakorlatban is sokszor elfordult, hogy ehhez hasonl mdon kellett egy szmot
rtelmeznnk. Ha pl. egy 16 bites szmrtket kell megjelentennk, akkor a legprimitvebb
kijelzsi md 16 darab LED hasznlata. (A LEDek vilgtanak, ha az adott helyirtken egyes
van, nem vilgtanak, ha 0.) Ilyen megjelentst soha nem alkalmazhatunk oly mdon, hogy a
vilgt didkat egyszeren egyms mell helyezzk ilyenkor ugyanis a megjelentett rtk
nagyon nehezen lenne rtelmezhet. A pldban jelli a vilgt, pedig az inaktv fnyforrst.
ezt nem kny rtelmezni [hibsan kialaktott kejelz!]

ezt rnzsre is knnyebb felfogni: 1321E
(16)

4.5 Nyolcas(OCTalis) szmrendszer
A nyolcas szmrendszer hasznlata rgebben volt elterjedt, manapsg jelentsge egyre cskken.
Alapszma nyolc.
Az oktlis szmrendszert a binrissal bithrmasok (tripletek) kapcsoljk ssze, ppen gy, mint
az elzekben trgyalt bitngyesek a 16-os s a 2-es szmrendszereket.
2001, Szikora Zsolt 16 / 49 Szmrendszerek
4.6 Gyakorl feladatok

Vgezze el az albbi konverzikat. Ha a trtrsz szmjegyeit legfeljebb nyolc digites pontossgig
hatrozza meg!

Konverzi talaktand szm Eredmny
DEC BIN 1956
DEC BIN - 1023
DEC BIN 0,8
DEC BIN 0,546875
DEC BIN - 144,625

Konverzi talaktand szm Eredmny
DEC HEX -2000
DEC HEX 0,8
DEC HEX 65535
DEC HEX +127
DEC HEX -0,667 968 75

Konverzi talaktand szm Eredmny
DEC OCT -2001
DEC OCT 0,8
DEC OCT 65535
DEC OCT +127
DEC OCT -0,667 968 75

Konverzi talaktand szm Eredmny
BIN HEX 1011 101 00
BIN HEX 0,101 111 01
BIN HEX -11 0011 11
BIN HEX 0,1110 11
BIN HEX +1010 1010,0101 0101
2001, Szikora Zsolt 17 / 49 Szmrendszerek

Konverzi talaktand szm Eredmny
HEX BIN ac76
HEX BIN -3c
HEX BIN 0,b8
HEX BIN -63,86
HEX BIN +45

Konverzi talaktand szm Eredmny
HEX DEC Ac76
HEX DEC -3c
HEX DEC 0,b8
HEX DEC -63,86
HEX DEC +45

Konverzi talaktand szm Eredmny
OCT BIN 765
OCT BIN -137
OCT BIN 0,42
OCT BIN -53,4
OCT BIN +45

Konverzi talaktand szm Eredmny
OCT DEC 765
OCT DEC -137
OCT DEC 0,42
OCT DEC -53,4
OCT DEC +45

2001, Szikora Zsolt 18 / 49 Szmrendszerek
4.7 Gyakorl feladatok megoldsa

Ellenrizze az elzleg megoldott feladatok eredmnyt! A helyes vlaszokat az albbi
tblzatok tartalmazzk.
Konverzi talaktand szm Eredmny
DEC BIN 1956 111 1010 0100
DEC BIN - 1023 - 11 1111 1111
DEC BIN 0,8 0,1100 1100
DEC BIN 0,546875 0,1000 11
DEC BIN - 144,625 - 1001 0000,101

Konverzi talaktand szm Eredmny
DEC HEX -2000 -7d0
DEC HEX 0,8 0,ccc
DEC HEX 65535 ffff
DEC HEX +127 +7f
DEC HEX -0,667 968 75 -0,ab

Konverzi talaktand szm Eredmny
DEC OCT -2001 -3721
DEC OCT 0,8 0,6314 6314
DEC OCT 65535 177777
DEC OCT +127 +377
DEC OCT -0,667 968 75 -0,526

Konverzi talaktand szm Eredmny
BIN HEX 1011 101 00 174
BIN HEX 0,101 111 01 0,bd
BIN HEX -11 0011 11 -cf
BIN HEX 0,1110 11 0,ec
BIN HEX +1010 1010,0101 0101 +Aa,55
2001, Szikora Zsolt 19 / 49 Szmrendszerek

Konverzi talaktand szm Eredmny
HEX BIN ac76 1010 1100 0111 0110
HEX BIN -3c -11 1100
HEX BIN 0,b8 0,1011 1
HEX BIN -63,86 -110 0011,1000 011
HEX BIN +45 +10 0101

Konverzi talaktand szm Eredmny
HEX DEC Ac76 44 150
HEX DEC -3c -60
HEX DEC 0,b8 0,718 75
HEX DEC -63,86 -99,523 437 5
HEX DEC +45 +69

Konverzi talaktand szm Eredmny
OCT BIN 765 111 110 101
OCT BIN -137 -1 011 111
OCT BIN 0,42 0,100 01
OCT BIN -53,4 -101 011,1
OCT BIN +45 +100 101

Konverzi talaktand szm Eredmny
OCT DEC 765 501
OCT DEC -137 -95
OCT DEC 0,42 0,503 906 25
OCT DEC -53,4 -43,5
OCT DEC +45 +37


2001, Szikora Zsolt 20 / 49 Kdrendszerek
5 Egyszer alapmveletek klnbz szmrendszerekben
5.1 Mveletek decimlis szmokkal
5.2 Binris szmok sszeadsa
5.3 Binris szmok kivonsa
5.4 Binris szmok szorzsa
5.5 Mveletek hexadecimlis szmokkal
2001, Szikora Zsolt 21 / 49 Kdrendszerek
6 Kdok
A kdok megismershez felttlenl tisztznunk kell nhny alapfogalmat.
6.1 Kdolsi alapfogalmak
Kezdjk mindjrt magnak a kdnak a meghatrozsval. Kd =egy szimblumhalmazhoz
rendelt, azt egyrtelmen lekpez szimblumhalmaz.
A kd egy msik, valsznleg knnyebben emszthet meghatrozsa: egy az rdekeltek
mindegyike ltal egyrtelmen meghatrozott s ismert adatbrzolsi mdszer. A kd teht
egy megllapods az rdekeltek kztt az adatok brzolsnak, trolsnak, tovbbtsnak
mdjrl.
Aki ismeri a kdot, az kpes a rendelkezsre ll adatokat a kdrendszerben rvnyes
szimblumokk alaktani. Ez a mvelet a kdols.
A kdolt formj adatok jelentsnek megismershez a kdszimblumokat vissza kell alaktani
a kdols eltti jelekk, azaz el kell vgezni a kdols inverz mvelett, a dekdolst.
Termszetesen a kdols/dekdols csupn szemllet krdse: az eredeti informci (esemny) is
csak akkor rtelmezhet, ha ismerjk a jelentst ha teht kzelebbrl szemgyre vesznk egy
kdolst/dekdolst, minden esetben azt vehetjk szre, hogy valjban csupn kdvlts trtnt.
Kdolskor a kdot alkot elemi jelek halmazbl, azaz a szimblumkszletbl vlasztjuk ki az
ppen szksges elemeket. Azokat a kdokat, melyeknek szimblumkszlete ktelem, binris
kdoknak nevezzk. A digitlis technika jelenleg fknt binris, azaz ktrtk jelrendszert
hasznl. Ezeket a gyakran a 0 s 1 szimblumokkal szoktk brzolni, ugyanakkor taln
sejthet, hogy fizikailag ezeket a lapos karika s ll kamp jeleket nem tudjuk knnyedn
feldolgozni az informatikai eszkzkkel.
A szimblumok mgtt ltalban mindig valamilyen technikailag jl kezelhet llapot (esetleg
llapotvltozs) meglte vagy hinya azaz valamilyen jel ll. A jelek valamilyen fizikai
jellemz rkei vagy rtkvltozsai valaminek a fggvnyben. Leggyakrabban az id
fggvnyben szoks a fizikai jellemz rtkeit jelnek tekinteni.
Van azonban olyan eset is, amikor valami ms jellemz, pl. a hely fggvnyben vltozik a
jellemz, s ezt nevezzk jelnek. Gondoljon csak erre a szvegre, amit olvas ppen. J eleknek
ebben a szvegben is a papr vagy kperny felletnek klnbz helyn lv fnyessgrtk-
mintk tekinthetk.
Ha a kdszimblumokat a fizikai jellemz rtke kzvetlenl hordozza, statikus
szimblumbrzolsrl beszlnk. Nhny plda arra, hogy milyen fizikai jellemzk
hordozhatjk a jeleket:
Feszltsg [pozitv TTL logika]: 0 : 0V 0,8V
1 : 2,4V 5V
Egy ilyen mdon brzolt 0 111 0 1 00 1 bitsorozat lthat az 6-1. bra NRZ jele.
Az brn szerepl Clock jel ahhoz kell, hogy kijelljk azokat a pillanatokat,
amikor az NRZ jel szintjt egy j szimblumnak kell tekintennk.
Mgneses mez [adathordozn] 0 : szak dl
1 : szak dl
2001, Szikora Zsolt 22 / 49 Kdrendszerek
Anyag-folytonossg [adathordozn] 0 : nincs anyaghiny az adott helyen
1 : lyuk van a szalagon

Time (s)
0.00 10.00
a) Clock
L
H
b) NRZ
L
H

6-1. bra
Ha a jelek vltozst tekintjk informcinak, akkor azt dinamikus szimblumbrzolsnak
nevezzk. Pldul:
Ktcsatorns adatbrzols: 0 : llapotvltozs a 0. adatcsatornn
1 : llapotvltozs az 1. adatcsatornn
Az 6-2. bra egy ilyen ktcsatorns szimblumbrzolst szemlltet.
Az brn a fels csatorna jelszintjnek vltozsa jelenti az 1-et, az als csatorna
jelnek vltozsa pedig a 0-t.
A jelek ltal hordozott szimblumsorozat: 0 111 0 1 00 1.
Time (s)
0.00 10.00
Channel0
L
H
Channel1
L
H

6-2. bra
CD fizikai adatbrzolsa 0 : folyamatosan land vagy folyamatos pit
1 : pit/land vagy land/pit tmenet
Fggetlenl attl, hogy a szimblumokat milyen mdon brzoljuk, minden esetben ezek a
szimblumok hordozzk az adatokat. Pontosabban: az adatokat a szimblumok egymsutnja
jelzi.
Ne gondolja azonban azt, hogy az elemi szimblumok kzvetlen jelentssel brnak. A
szimblum-folyam nem egy tagolatlan massza. A szimblumsorozat mindig kdszavakra
tagolhat.
Kdsznak nevezzk a kdszimblumokbl alkotott egybefgg sorozatot. A kdsz az zenet
legkisebb, mr rtelmezhet jelentssel br egysge.
2001, Szikora Zsolt 23 / 49 Kdrendszerek
A kdszavakat alkot szimblumok szma a kdsz hossz. Ha egy kd binris, akkor a
kdszavak hosszt bitekben adjuk meg.
A kdokat szoks osztlyozni a kdszavak hossza alapjn: a gyakorlatban hasznlt kdrendszerek
leginkbb rgztett kdsz hosszsgak, br elfordulnak vltoz szhosszsg kdok is. A
jelenleg elterjedten alkalmazott kdrendszerek szinte mind rgztett szszlessgek; ltalban
nyolcbitesek, vagy ennek tbbszrsei. A tovbbiakban csak ezekkel a fix szszlessg
kdokkal foglalkozunk majd.
A kdsz-kszlet a szimblumokbl sszerakhat, a kdrendszerben rtelmezett kdszavak
halmaza. Az rvnyes kdszavakon tl elfordulhatnak egy zenetben tiltott kdszavak is.
A tiltott kdsz olyan jelsorozat, amely formailag ugyan illeszkedik a kdrendszerbe, de
valjban rtelmezhetetlen, rvnytelen, dekdolhatatlan.
Szoks mg a kdokat az brzolt informci jellege alapjn is csoportostani. Ezek szerint
megklnbztethetk a numerikus (csak szmokat tartalmaz), alfanumerikus (szmokat s
betket egyarnt brzolni kpes) kdokat, valamint egyb tpus informcit hordoz (hang,
kp, mozgkp,) kdokat.
A fenti alapfogalmakra mutat egy gyakorlati pldt a 6-3. bra. Az bra egy vztorony vzszint-
szablyozsnak egyszerstett vzlata. Az elkpzelt szablyozs kt darab binris azaz kt-
llapot rzkelt (1 s 0) hasznl. Az rzkelk szrazon egy 0 szimblumot (pl. kis
feszltsget), vizesen pedig egy 1 szimblumot (pl. nagy feszltsget) lltanak el.
1
0
VEZRLS
2 BITES BINRIS KD
1 0 J ELENTS
0 0 Vzszint alacsony
0 1 Vzszint okay
1 0 ?! (TILTOTT KDSZ)
1 1 Vzszint magas
Az rzkelk (1, 0) mkdse:
llapot Kiadott jel ()
Szraz 0
Vizes 1

6-3. bra
Az rzkelk ltal szolgltatott jelekbl egy ktbites kdsz ll ssze. Ezt a kdszt rtelmezheti
egy digitlis rendszer a valsgban ugye nincs szksg itt egy szmtgpre, sokkal egyszerbb
megoldsok is alkalmazhatk. A dntshoz az brn egy mgis szmtgp a bemenetn
lv ktbites kdsz alapjn dnt, s szksg esetn a szivatty vezrlsvel prblja a vzszintet
a kt rzkel kztti szinten tartani. Keresse meg az eddigi kdolsi alapfogalmakat az brn!
2001, Szikora Zsolt 24 / 49 Kdrendszerek
Trtek
1. Eljeltelen
egszek
2. Eljeles
egszek
4. Lebegpontos
szmbrzols
3. Fixpontos
szmbrzols
Egyb kdok
Numerikus
kdok
5. Alfanumerikus
kdok
5.1. ASCII
5.2. Unicode
1.3. Egylpses
kdok
1.1. Egyszer
binris
1.2. BCD
1.3.1. J ohnson
1.3.2. Gray
2.3. Kettes
komplemens
2.1.
Eljel-Nagysg
2.2. Egyes
komplemens
KDOK
2.4. Eltolt
binris


6-4. bra
A szmunkra rdekes kdok tovbbi osztlyozst a 6-4. bra mutatja. Az brn szaggatott
vonal jelli azt az tvonalat, ami, szerint megismerkednk a digitlis technikban leginkbb
hasznlatos kdolsokkal (-tl -ig :-).
6.2 Eljeltelen egszek kdolsa
Az eljeltelen egsz kdok csak a szmok nagysgnak brzolsra szolglnak; olyan esetekben
szoks alkalmazni ket, ha a kdolt adat mindig eljeltelen szmrtk, vagy soha nem vlt
eljelet (pl. sly, trfogat stb.)
6.2.1 Egyszer binris kd
Ez a kdols a szm rtknek kettes szmrendszerben trtn brzolst jelenti. Mivel a
kdsz hossza rgztett, minden egyes kdsznak azonos bitszmnak kell lennie. A kd kpzse
teht a kvetkez szably szerint trtnik.
2001, Szikora Zsolt 25 / 49 Kdrendszerek
Az brzoland szmot le kell rnia kettes szmrendszerben, majd balrl kiegszteni annyi darab
nullval, hogy a bitsorozat a kvnt kdsz-szlessgnek megfeleljen.
Pldk:
A 44
(10)
szmot brzoljuk eljeltelen binris kdban 8 biten.
44
(10)
=10 1100
(2)
a megolds: 0010 1100
A 81
(10)
szmot brzoljuk eljeltelen binris kdban 16 biten.
81
(10)
=101 0001
(2)
a megolds: 0000 0000 0000 0101 0001
A 175
(10)
szmot brzoljuk eljeltelen binris kdban 6 biten.
175
(10)
=1010 1111
(2)
a megolds: nincs megolds!!!
Termszetesen a kdsz szlessgbl rgtn addik az brzolhat szmtartomny is. Ha a
kdols szszlessge n, akkor az n biten brzolhat szmtartomny 2
n
darab szmbl ll. Az
brzolhat rtkek: 0; 1; 2; (2
n
-1). Az albbi tblzat nhny gyakoribb a szszlessg esetn
mutatja az brzolhat szmtartomnyt.
brzolhat szmtartomny Szszlessg Lehetsges rtkek
darabszma DEC HEX
n
n
2 0 1 2
n


8 256 (0.25 k) 0; 1; 255 00; 01; FF
16 65536 (64k) 0; 1; 65535 0000; 0001; FFFF

6.2.2 BCD kd
A BCD kd az angol Binary Coded Decimal kifejezs kezdbetinek rvidtsbl addik. A
kifejezs magyar jelentse Binrisan Kdolt Decimlis. A BCD kd nem a szmok rtkt,
hanem a szmok tzes szmrendszerbeli alakjt kdolja binris formban.
A BCD kifejezs valjban nem is egyetlen nem egyetlen kdot, hanem egy kd-csaldot takar.
Az albbiakban megismerkednk, a klnbz BCD kdokkal.
A kdols mdszere mindig ugyanazt a smt kveti. A szmunkra bartsgos tzes
szmrendszerben megadott szmrtket gy tudjuk trni BCD kdba, hogy a felrt szm egyes
szmjegyeit egyenknt, kln-kln kdoljuk valamilyen szably szerint bitngyesekk, majd az
gy kapott rtkeket valamilyen mdon egymshoz illesztjk.
Az egyes BCD kdok kztt az a klnbsg, hogy
(a) milyen mdon lltjuk el a bitngyeseket az egyes decimlis digitekbl, s hogy
(b) milyen mdszerrel illesztjk egymshoz a digitek kdolsakor ellltott kdsz-
darabokat.
(a) Bitngyesek ellltsi mdja szerint megklnbztetett BCD rendszerek.
Norml BCD, nBCD, 8-4-2-1 BCD
Ez a mdszer az egyes digitek rtknek megfelel binris rtkekkel kdol. A pldk
klnbz decimlis szmokhoz tartoz bitngyeseket szemlltetik.
44 esetn ezek: 0100 s 0100
2001, Szikora Zsolt 26 / 49 Kdrendszerek
81 esetn ezek: 1000 s 0001
175 esetn ezek: 0001 s 0111 s 0101
3 tbbletes BCD, Excess-3 BCD
Ez a mdszer az nBCD bitngyesek rtkt mg meg is nveli hrommal. A pldk
klnbz decimlis szmokhoz tartoz bitngyeseket szemlltetik.
44 esetn ezek: 0111 s 0111
81 esetn ezek: 1011 s 0100
175 esetn ezek: 0100 s 1010 s 1000
Vannak ms mdszerek is, azonban ezeknek a jelentsge egyre kisebb. A 3 tbbletes mdszer is
sokkal kevsb elterjedt, mint a a norml BCD; a mszaki informatikai gyakorlatban ltalban
igaz, hogy ha BCD kdrl beszlnk, akkor ez alatt nBCD mdszerrel ellltott bitsorozatot
rtnk. Az nBCD kifejezs helyett ezrt a tovbbiakban egyszeren csak BCD szerepel
mostantl.
(a) Bitngyesek egymshoz illesztse szerint megklnbztetett BCD rendszerek.
Tmr(tett) BCD, Packed BCD
Ilyenkor a bitngyeseket kzvetlenl egymshoz illesztjk. Egy bjton teht kt decimlis
digitet tudunk brzolni.
Znzott BCD, Zoned BCD
Ilyenkor a bitngyeseket nem kzvetlenl egymshoz illesztjk; minden egyes bjton
csupn egyetlen hasznos bitngyest helyeznk el gy, hogy a bjt fels ngy bithelyt
nullkkal tltjk fel.
Ezzel elrjk, hogy minden egyes bjt egyetlen decimlis szmjegyet tartalmaz. A
znzott BCD kdols termszetesen tbb ktszer annyi bithelyen brzolja ugyanazt
a , mint a
Leginkbb a szmtgpek memriban trolt szmok esetn szoks tmrtett/znzott formrl
beszlni.
A 175 tmr BCD kdja 16 biten: 0000 0001 0111 0101
A 175 znzott BCD kdja 3 bjton: 0000 0001 0000 0111 0000 0101
Ha a BCD kd hardver egysgek sszekapcsolsra alkalmazott, akkor nem szoks rtelmezni a
tmrtett/znzott megklnbztetst. Ha pl. egy elektronikus mrleg 5 digites htszegmenses
kijelzvel van elltva, akkor a kijelzt vezrl elektronika az egyes digitek llapott digitenknt
ngy (sszesen teht 20) vezetket hasznlva hatrozhatja meg.
A BCD fontos tulajdonsga, hogy tartalmaz tiltott kdszavakat. A hasznos bitngyeseknek tz
klnbz rtke lehet (09) ngy biten azonban 16 lehetsg van sszesen. A kdols teht
nem hasznlja ki az sszes lehetsges bitkombincit: hat tiltott rtket is tartalmaz, az 1010,
1011, 1100, 1101, 1110, s 1111 rtkeket nem vehetik fel az nBCD bitngyesek.
Az brzolhat szmtartomny n bites tmrtett BCD kd esetn: 0, 1, (10
n/4
-1).
Termszetesen n rtke mindig ngynek egsz szm tbbszrse kell legyen. Az albbi tblzat
nhny gyakoribb a szszlessg esetn mutatja az brzolhat szmtartomnyt.
2001, Szikora Zsolt 27 / 49 Kdrendszerek
brzolhat szmtartomny Szszlessg Lehetsges rtkek
darabszma DEC HEX
N
4 /
10
n
0 1 10
4 /

n


8 100 00; 01; 99 00; 01; 99
16 10 000 0000; 0001; 65535 0000; 0001; 9999

6.2.3 Egylpses kdok
Az egylpses kdokat leginkbb a kzvetlenl digitlis jeleket szolgltat rzkelk hasznljk.
Az egylpses kdok megismerse eltt azonban meg kell mg ismerkednnk a kdszavak
tvolsgnak fogalmval.
Kt kdsz tvolsgnak nevezzk, azt, hogy kt kdsz hny szimblum-pozcin tr el
egymstl. A kdszavak tvolsga termszetesen mindig egsz szm.
Pl. a 0100 s a 0101 kdszavak kztti tvolsg ppen egy. Hromszimblumnyi tvolsgra
vannak egymstl az 11110011 s az 11110100 kdszavak.
Az albbi tblzat mutatja az egyszer binris kd els nhny szomszdos kdszavnak
tvolsgt. Az egyszer binris kd lthatan nem egylpses kd!
A gyakorlatban nagy jelentssggel brnak azonban azok a
kdrendszerek is, melyekben a szomszdos kdszavak tvolsga mindig
ppen egy. Ezeket a kdokat egylpses kdoknak (Hamming kdoknak)
nevezzk. Az egyszer binris kd nem ilyen, ezrt nem alkalmazhat
pl. kdlcek helyzetkdolsra. Termszetesen a 8-4-2-1 BCD sem ilyen
egylpses kd.
Van azonban kt egylpses kd, mellyel rdemes megismerkednnk:
ezek a J ohnson s a Gray kdok.


6.2.3.1 Jonhson kd
A J ohnson kdszavak kpzse a lehet legegyszerbben trtnik, annak szem eltt tartsval,
hogy a szomszdos kdszavak csakis egyetlen bithelyen trjenek el egymstl.
Az n-bites J ohnson kd a nulla rtket n darab nullval kdolja, majd a
kdsz jobb oldalrl fokozatosan feltltdik egyesekkel. Ha az egyesek
teljesen feltltttk a kdszt, akkor kezddik a kdsz feltltse ismt
nullkkal szintn az LSB fell, mgnem egyetlen egyes marad az MSB
helyn. A tblzat egy 6-bites J ohnson kdot szemllt.
A J ohnson kd nem hasznlja ki az n biten rendelkezsre ll 2
n

lehetsget. Rengeteg tiltott kdszt tartalmaz ez a kdrendszer. Az n bites
J ohnson kd csupn 2n darab klnbz llapot kdolsra alkalmas.
Annak ellenre, hogy ilyen pazarl" a kdrendszer, a gyakorlatban
idnknt szoktk alkalmazni egyszersge miatt.
0
1
2
3
4
5
6
7
8
0000
0001
0010
0011
0100
0101
0110
0111
1000
2
1
4
1
2
1
3
J elents Kdsz
Tv
10
1001
1010
2
1
9
1
J elents Kdsz
0 000000
1 000001
2 000011
3 000111
4 001111
5 011111
6 111111
7 111110
8 111100
9 111000
10 110000
11 100000
2001, Szikora Zsolt 28 / 49 Kdrendszerek

6.2.3.2 Gray kd
Ez a kdrendszer nem tartalmaz tiltott kdokat, azaz kpes kihasznlni az n biten rendelkezsre
ll 2
n
darab llapotot.
A kdrendszert legegyszerbben gy alkothatjuk meg, hogy
az egy bites szszlessg Gray kdbl indulunk ki. Ebbl
kiindulva aztn fokozatosan szlestjk a kdszavakat a kvnt mrtkben. Az egy bites Gray kd
meglehetsen egyszer.

A ktbites Gray kdszavakat az egy-bites kdok ismeretben
llthatjuk el az albbi mdszerrel. Az ismert kdrszeket
tkrzzk a tblzatban jellt tengelyre, majd a tengely
fltti kdszavak el nullkat, a tengely alatti kdszavak el
pedig egyeseket runk.
A hrombites Gray kdszavakat az egy-bites kdok
ismeretben llthatjuk el az albbi mdszerrel. Az ismert
kdrszeket tkrzzk a tblzatban jellt tengelyre, majd a
tengely fltti kdszavak el nullkat, a tengely alatti
kdszavak el pedig egyeseket runk.

A ngybites Gray kdszavakat a hrom-bites kdok ismeretben llthatjuk el az albbi
mdszerrel. Az ismert kdrszeket tkrzzk a tblzatban jellt tengelyre, majd a tengely fltti
kdszavak el nullkat, a tengely alatti kdszavak el pedig egyeseket runk. Prblja kitlteni az
albbi ngybites Gray kdhoz tartoz kdtblzatot!

L
S
B



K

d
s
z


M
S
B


J
e
l
e
n
t

s


0

1

2

3

4

5

6

7

8

9

1
0

1
1

1
2

1
3

1
4

1
5


J elents Kdsz
0 0
1 1
J elents Sz
0 0 0
1 0 1
2 1 1
tengely
3 1 0

J elents
Kdsz
0 0 0 0
1 0 0 1
2 0 1 1
3 0 1 0
4 1 1 0
tengely
5 1 1 1
6 1 0 1
7 1 0 0
2001, Szikora Zsolt 29 / 49 Kdrendszerek
6.2.4 Gyakorl feladatok
2001, Szikora Zsolt 30 / 49 Kdrendszerek
6.2.5 Gyakorl feladatok megoldsa
2001, Szikora Zsolt 31 / 49 Kdrendszerek
6.3 Eljeles egszek kdolsa
Az eljeles szmok kdolsra mr komolyabb feladat: az eljelt is a 0 s 1 szimblumokkal kell
kzlnnk! Az eljelbit mindig a bitsorozat bal szlre kerl. A kvetkezkben megismerkednk
azzal, hogyan szoks a szmrtkeket eljelkkel egytt kdolni. Az sszes ltalunk
megismerend eljeles egsz kdolsi mdszer a szm nagysgnak kettes szmrendszerben
felrt alakjbl indul ki.
6.3.1 Eljel-Nagysg kd
Ez legprimitvebb szmbrzolsi mdszer. A kdsz MSB-jt nem tekintjk az rtk,
hordozjnak. A kdsz els bitjt kinevezzk eljelbitnek (S = signum). Ez az S bit jelzi a szm
eljelt az albbi megllapods szerint:
- pozitv szmok esetn S =0
- negatv szmok esetn S =1
A tovbbi bitek termszetesen a szm nagysgt (abszolt rtkt) jelzik egyszer binris
kdban. Teht a nagysg MSB-je a kdsz msodik bitje (balrl).
Az eljelbit bevezetsrt azzal kell fizetnnk, hogy az brzolhat legnagyobb abszolt rtk
termszetesen lecskken: n tites kdsz esetn az brzolhat szmtartomny:
(2
n-1
-1) ; ; -2 ; -1 ; -0 ; +0 ; +1; +2 ; ; +(2
n-1
-1)
Az albbi tblzat nhny gyakoribb a szszlessg esetn mutatja az brzolhat
szmtartomnyt. Vegye szre, hogy az eljel-nagysg kd kln kpes brzolni a +0 s -0
rtkeket!
brzolhat szmtartomny Bitszm Lehetsges rtkek
darabszma DEC HEX
N
n
2 ) 1 2 (
1

n
-0; +0 ) 1 2 (
1
+
n


8 256 -127 -0; +0 +127 -7F -00; +00 +7F
16 65536 -32767 -0; +0 +32767 -7FFF-0; +0+7FFF
Lssunk nhny pldt az eljel-nagysg kdra!
Kdoland Keletkez kdsz
+44 eljel-nagysg kdban 8 biten a) trjuk a 44-et kettes szmrendszerbe:
10 1100
b) a szmot balrl feltltjk nullkkal ezzel
kialakul a nagysg:
s010 1100
c) a pozitv eljel miatt S =0
0010 1100
-44 eljel-nagysg kdban 8 biten 1010 1100 (S=1 lett)
+44 eljel-nagysg kdban 12 biten 0000 0010 1100
-44 eljel-nagysg kdban 12 biten 1000 0010 1100
2001, Szikora Zsolt 32 / 49 Kdrendszerek

A kdrendszer htrnya, hogy klnbz szmok sszevonsakor az eljeleket kln figyelnnk
kell a mveletvgzs sorn. Szinte soha nem is alkalmazzk.
6.3.2 Egyes komplemens kd
Ez mr egy kicsit trkksebb. :-)
A pozitv szmokat ugyangy kdoljuk, mintha Eljel-nagysg kdban brzolnnk a szmot.
A negatv szmokat azonban nem csupn az eljel megfordtsval kpezzk: negatv szm
esetn minden bitet megfordtunk: teht nemcsak az eljel bit vltozik 1-re, hanem az egyes
rtkbitek is megfordulnak!
Kdoland Keletkez kdsz
+44 eljel-nagysg kdban 8 biten a) trjuk a 44-et kettes szmrendszerbe:
10 1100
b) a szmot balrl feltltjk nullkkal ezzel
kialakul a nagysg:
s010 1100
c) a pozitv eljel miatt S =0
0010 1100
-44 eljel-nagysg kdban 8 biten 1101 0011 (minden bit megfordult!)
+44 eljel-nagysg kdban 12 biten 0000 0010 1100
-44 eljel-nagysg kdban 12 biten 1111 1101 0011
Az brzolhat szmtartomny megegyezik az eljel-nagysg kdhoz tartozval:
(2
n-1
-1) ; ; -2 ; -1 ; -0 ; +0 ; +1; +2 ; ; +(2
n-1
-1)
Ebben a kdrendszerben is kln kdsz jelzi a +0 s a -0 rtkeket. Klnbz eljel szmok
sszevonsakor az egyszer binris sszeadssal is helyes eredmnyt kapunk szerencss esetben
(ha az sszeg nulla), de mskor sajnos nem: mindig eggyel kevesebb jn ki!
0010 1100 (+44)
+ 1101 0011 (-44)
11111111 ( 0)
0011 0010 (+50)
+ 1101 0011 (-44)
[1] 00000101 (+5)

6.3.3 Kettes komplemens kd
Ez a szmtstechnikban legelterjedtebben (szinte kizrlagosan) alkalmazott kdolsi forma.
A pozitv szmokat ugyangy kdoljuk, mint az elz kdok esetn.
A negatv szmok esetn a pozitv megfelelbl kpzett kettes komplemenst brzoljuk. A kettes
komplemens kpzs mvelett hromflekppen tudjuk elvgezni: matematikai mdszerrel,
neglst kvet inkrementlssal, valamint kzi mdszerrel.
2001, Szikora Zsolt 33 / 49 Kdrendszerek
Matematikai mdszer
Ilyenkor a kiindulsi (pozitv) szmot kivonjuk a csupa nulla bitbl ll kdszbl. Az
esetleg keletkez vgs thozatot eldobjuk. A mdszer nagy htrnya, hogy a kivonst el kell
vgeznnk. ltalban az emberek mg a tzes szmrendszerben is
kerlik a kivonst a kettes szmrendszerben ugyanez a mvelet
mg jobban megvisel minket. A pldn 44 kettes
komplemensnek kpzse lthat 8 biten.


NOT + INC
A mdszer onnan kapta nevt, hogy a mai ALU egysgek rendkvl gyorsan kpesek egy
bitsorotat minden egyes bitjt neglni (NOT), majd ez utn szintn pillanatok alatt tudjk az
eredmnyt nvelni eggyel (INCrementls =nvels). Az els
mvelet az eredeti szm egyes komplemenst kpezi, a msodik
ezt nveli eggyel. Az eredmny a kettes komplemens. Ezzel a
mdszerrel dolgoznak a szmtgpek ALU egysgei.

Kzi kettes komplemens kpzs
Ezt a mdszert egy tlagos kpessg emberi teremtmny kpessgeihez igaztottk. A
mdszer rendkvl egyszer: az eredeti szm al oly mdon rhatja fel a kettes komplemenst
gyesen, hogy
- jobbrl balra msolja a biteketet, mgnem elr az
els egyes rtk bithez.
- mg ezt a bitet is lemsolja vltozatlanul,
- a tovbbi biteket azonban neglja (0 1).
Eredmnykppen magt a szignumot is helyesen fogja megkapni.
A szmbrzolsi tartomny csak egyetlen 0 rtkeket tartalmaz; a tartomny negatv irnyban
eggyel nagyobb kiterjeds. Az albbi tblzat nhny gyakoribb a szszlessg esetn mutatja
az brzolhat szmtartomnyt.
brzolhat szmtartomny Bitszm Lehetsges rtkek
darabszma DEC HEX
N
n
2 ) 2
1

n
-0; +0 ) 1 2 (
1
+
n


8 256 -128 -0; +0 +127 -80 0 +7F
16 65536 -32768 -0; +0 +32767 -8000 0 +7FFF
A kettes komplemens kdban vgzett klnbz eljel szmok sszevonsa mindig helyes
eredmnyt ad! Ezrt szeretjk ezt a kdot.

0010 1100 (+44)
+ 1101 0100 (-44)
[1] 0000 0000 (0)

0011 0010 (+50)
+ 1101 0100 (-44)
[1] 0000 0110 (+6)
0000 0000 (0)
- 0010 1100 (-44)
1101 0100
0010 1100 (+44)
1101 0011 1es k.
+ 0000 0001 (+1)
1101 0100
0010 1100 (+44)
erre
1101 0100
2001, Szikora Zsolt 34 / 49 Kdrendszerek
6.3.4 Eltolt binris kd
Ez a kd egszen ms filozfit kvet, mint az elzek rdekes mdon mgis hasonl
eredmnyre jut, mint a kettes komplemens kdols. Az eltolt binris kdols egy nagyon
egyszer megfontolson alapul, amit a 4 bites szszlessg kdrendszer pldjn keresztl
ismerhetnk meg. Az egyes szmrtkekhez tartoz kdszavakat a 6-5. bra utols oszlopban
tekintheti meg.
Az elv nagyon frappns: ha 4 biten abszolt binris teht eljeltelen kdban 0-tl 15-ig tudok
elszmolni, akkor gy tehetem a mdszert eljeles szmok brzolsra is alkalmass, hogy
egyszeren eltolom a bitsorozat jelentst az abszolt binris rtelmezshez kpest. Ha ngy biten
kell a szmokat kdolnom, akkor az eltolst gy vgzem, hogy az abszolt szmtartomny
kzepn tallhat, binrisan ppen kerek 1000 kdszt tekintem nullnak. Az 1000 fltti
bitsorozatok (abszolt rtelmezs szerint: a 8-nl nagyobbak) mind pozitvak. A 0000 0111
kdszavak tartomnya termszetesen negatv szmokat reprezentl. A ngybites ofszet binris
kd eltolsa teht ppen 8. Az n bites kdszhoz mindig 2
n-1
rtk eltols tartozik. (Lteznek
termszetesen olyan furcsa, ezoterikus OB kdok is, melyeknek az eltolsa n bites kdszavak
esetn nem 2
n
, ezeket azonban tekintsk csak kivteleknek, melyek erstik a szablyt. :-))
Szmbrzolsi tartomnya megegyezik a kettes komplemens kdolsval.
Az ofszet binris kdokat a gyakorlatban leginkbb az ADC-k s DAC-k (lsd: 3.3. rsz: A/D s
D/A konverzi) hasznljk.
6.3.5 Eljeles egsz-brzolsok sszevetse
Az ismertetett ngy klnbz eljeles egsz brzolsi mdszer sszehasonlt tblzatt a 6-5.
bra tartalmazza.
Eljel-
nagysg
(E-N)
Egyes
komplemens
(1-es K)
Kettes
komplemens
(2-es K)
Ofszet
binris
(O.B.)
0111 0111 0111 1111
0110 0110 0110 1110
0101 0101 0101 1101
0100 0100 0100 1100
0011 0011 0011 1011
0010 0010 0010 1010
0001 0001 0001 1001
+0 0000 0000
-0 1000 1111
1001 1110 1111 0111
1010 1101 1110 0110
1011 1100 1101 0101
1100 1011 1100 0100
1101 1010 1011 0011
1110 1001 1010 0010
1111 1000 1001 0001
- - 1000 0000 -8
0
-3
-4
-5
-6
+1
-1
-2
-7
brzolsi mdszer
0000 1000
J elents
+7
+6
+5
+4
+3
+2

6-5. bra
2001, Szikora Zsolt 35 / 49 Kdrendszerek
Vegye szre az albbi sszefggseket a tblzatban.
Az EN s 1K kdokkal kln jellhetjk a +0 s 0 rtkeket, a 2K s OB kdok csak
egy nullt tartalmaznak.
A 2K s OB kdoknak negatv irnyban eggyel hosszabb a szmbrzolsi tartomnya.
Az EN, 1K s 2K kdok a pozitv szmokat egyarnt 0 eljelbittel brzoljk.
Az EN, 1K s 2K kdok a pozitv szmokat teljesen egyformn brzoljk; csak a negatv
szmok brzolsban van eltrs.
Az EN kd nagysg-rsze a +0|-0 hatrra tengelyesen szimmetrikus
Az 1K kd minden bitjhez a +0|-0 hatrra tengelyesen szimmetrikus kdsz fordtott
bitje tartozik.
A 2K kd negatv szmokhoz tartoz minden kdszava azonos az eggyel balra s fltte
lv 1K kdszval.
Az OB kd kdszavai felfoghatk fordtott eljelbites kettes komplemens kdknt is!
(Teht van egy jabb, immr negyedik mdszer is a kettes komplemens kd kpzsre:
lltsuk el az eltolt binris kdot, majd fordtsuk meg a kdsz eljelbitjt!
A fenti szrevtelek egy rsze taln nyilvnvalnak tnik mgis javaslom, hogy egy kicsit
merengjen el a megjegyzseken s, tanulmnyozza nllan is a 6-5. bra tblzatt. Ms, az
elzekben fel nem sorolt sszefggseket is szrevehet rajta! Egy igazi bitvadsz szmra ez
mindig nagy rmt jelent
2001, Szikora Zsolt 36 / 49 Kdrendszerek
6.3.6 Gyakorl feladatok
2001, Szikora Zsolt 37 / 49 Kdrendszerek
6.3.7 Gyakorl feladatok megoldsa
2001, Szikora Zsolt 38 / 49 Kdrendszerek
6.4 Vals szmok brzolsa
A vals szmok egsz- s trtrszt is tartalmazhatnak.
6.4.1 Fixpontos szmbrzols
Fixpontos szmbrzols esetn mindig egy kiss mdostott egsz brzolsi mdszert
hasznlunk. Annyi a klnbsg csupn, hogy a kpzeletbeli tizedes (illetve kettedes) vesszt nem
a szmjegy-sorozat vgre, hanem valahov elrbb helyezzk.
Ismerkedjnk meg ezzel a szmbrzolssal egy pldn keresztl!
Rendelkezsnkre ll sszesen 32 bit a szmok kdolsra, s e=24 bitet hasznlunk a szmok
egszrsznek brzolshoz, t=8 bitet pedig a trtrsz szmra tartunk fnn. A helyzet az albbi:
n
e
=23 brzolhat szmok egszrsznek tartomnya kb. +- 2
23
, azaz +-8 388 608.
n
t
=8 az egyes rtkek egymstl 1/256 =0,00390625 tvolsgra helyezkednek el a teljes
tartomnyban. Az brzols felbontsa a teljes szmtartomnyban egyenletes,
llandan ekkora.

6.4.2 fix-point-reals.sdr


Ha nagyobb pontossgot (felbontst) akarunk, akkor a trtrsz bitszmt (n
t
-t) kell nvelnnk.
Ha elegenden nagy szmtartomnyt kvnunk a kddal lefedni, akkor n
e
rtkt, azaz az
egszrszeknek fenntartott bitszmot kell megnvelnnk.
Ha azonban mind az egszrszek, mind pedig a trtrszek bitszmt megnveljk, akkor brmely
konkrt szmot is brzoljuk a kdrendszerben, mindenkppen pocsklunk:
kis szmok esetn a nagy bitszm egszrsz felesleges
nagy szmok esetn a trtrszre nincs szksg
6.4.3 Lebegpontos szmbrzols
A lebegpontos szmbrzols megsznteti a fixpontos kdols bitpazarlst.
A lebegpontos brzolsi forma a vals szmokat kt fixpontos rtkkel brzolja. Ezek egyikt
mantissznak (m), a msikat pedig karakterisztiknak (k) nevezzk. A k karakterisztikt
exponensnek is szoks nevezni. Az gy kdolt szm rtelmezse:
k
r m szm = ,
ahol r az brzols gynevezett alapszma (radix). A radix rtkt megllapodsban rgztjk: a
szmot brzol jelsorozat csak m s k rtkeit tartalmazza a radixot nem.
A mantissza rtkt normlni szoktk azaz rgztik a benne trolt egszrsz szmjegyeinek
darabszmt.
A lebegpontos brzolst a legtbb valamennyire is ignyes szmolgp ismeri.
2001, Szikora Zsolt 39 / 49 Kdrendszerek
6.4.3.1 m s k szszlessgnek hatsa az brzolt szmtartomnyra
Az m s k rtkek az brzolt szm rtkt hatrozzk meg:
m a szm eljelt s konkrt rtkt hatrozza meg, mg
k a szm nagysgrendjre van hatssal.
Ha a mantissza trolsra tbb szmjegynyi helyet tartunk fenn, akkor az brzolhat
szmtartomny finomodik, azaz az egyes rtkek brzolsnak relatv pontossgt nveljk
meg. Teht a mantissza trolsra fenntartott digitek szma a szmtartomnyon belli
szmbrzols finomsgt, a felbontst, az egyes brzolt rtkek relatv pontossgt hatrozza
meg.
Ha a karakterisztika szszlessgt nveljk, akkor az brzolhat szmok tartomnyt
szlestjk ki.
Nulltl egyre tvolabbi, egyre nagyobb szmokat lesznk kpesek brzolni a szmegyenesen
pozitv s negatv irnyban egyarnt. A legkisebb brzolhat nem-nulla szm is egyre kzeledik
a nullhoz: egyre kisebb szmokat tudunk teht brzolni.
Teht a k trolsra fenntartott digitek szma a szmtartomny kiterjedst, az brzolhat
szmok nagysgrendjt hatrozza meg.
A fixpontos s lebegpontos brzolsi mdszereket az albbi bra szemllteti.





6.4.4 floating-point-reals.sdr



6.4.4.1 Tudomnyos norml alak
Ha egy szm tlsgosan nagy, akkor mindig clszer a karakterisztika-mantissza mdszerrel
trtn megadsa. Pl. -42300000000000000000000000000 helyett sokkal clszerbb -4,2310
28
-t
rnunk.
A normls (vagy normalizls) a matematikusok szmra azt jelenti, hogy a mantissza
egszrszt egy szmjegyv kell tennnk. Ezt a normalizlt alakot tudomnyos alaknak
nevezzk. J ele a szmolgpeken ltalban SCI (scientific =tudomnyos). A normalizls sorn
a tizedespontot (vesszt) jobbra vagy balra mozgatjuk, mgnem a szm egszrsze egy
szmjegyv vlik. Ekzben a karakterisztika rtkt termszetesen mindig nveljk vagy
cskkentjk eggyel, hogy a szm rtke vltozatlan maradjon.
Pldk a tudomnyos normalizlsra:
2001, Szikora Zsolt 40 / 49 Kdrendszerek
Eredeti alak Lebegpontos (mr
k
) alak Normalizlt alak (SCI)
64535.87 64535.87 10
0
6.45358710
+4

0.000 010 458 0.000 010 458 10
0
1.045 810
-5

-5 100 000 -5 100 000 10
0
-5.110
+6

6.4.4.2 Mrnki norml alak
Egy msik tipikus zemmd a szmolgpek esetn a mrnki (ENG =engineering) normlalak.
Ilyenkor a normls megengedi, hogy a mantissza egy, kett vagy hrom digites egszrsz
legyen.
Mrnki normlskor clunk az, hogy a karakterisztika mindig hrommal oszthat legyen. Ez
akkor clszer, ha a kapott jellemz nagysgrendjt jl rzkelhetv akarjuk tenni. A mrnki
normlalakban megadott szmokat knnyedn trhatjuk szabvnyos SI prefixumokk.
Pldk a mrnki normalizlsra:
Eredeti alak Lebegpontos (mr
k
) alak Normalizlt alak (SCI)
64535.87 64535.87 10
0
64.5358710
3
[64.535 87 kilo]
0.000 010 458 0.000 010 458 10
0
10.45 810
-6
[10.45 mikro]
-5 100 000 -5 100 000 10
0
-5.110
6
[5.1 Mega]
6.4.4.3 Szmtstechnikai norml alak
A szmtstechnikai norml alakot jelenleg szabvnyok rgztik (IEEE 754 s IEEE 854
szabvnyok). Az brzols alapszma (radix): kett.
A szmokat binris alakjuk szerint, egy bites egszrszre (azaz 1-re!) normlva brzolja. A
szmokat tbb pontossgi szinten azaz tbb szabvnyos szszlessget hasznlva lehet
kdolni. A lehetsges teljes szszlessgek: 32, 64, 80 s 128 bit. Minden esetben az albbi
mezkbl indul ki egy lebegpontos szm brzolsa.
(-1)
S
2
E
1.F , ahol
S =a szm eljelbitje (Sign)
F =a mantissza trtrsze (Fractional part). F brzolsa az eljel rtktl fggetlenl
mindig abszolt binris kdban trtnik.
E =az brzoland szm exponense (karakterisztikja)
A binris jelsorozatban az Exponens eljeles brzolsa helyett egy eltolt karakterisztikt kell
megjelenteni: C =E + , ahol
=egy konstans, melynek rtke E bitszmtl fgg. Az eltols azrt szksges, mert a
szabvny csak a mantissza eljelt (teht az brzolt szm eljelt) kdolja kln eljelbit
hasznlatval. A karakterisztika (exponens) kdolsakor eltolt binris kdot hasznlnak. s
termszetesen nem szablyos
2001, Szikora Zsolt 41 / 49 Kdrendszerek
Az brzols rdekessge, hogy a 32 s 64 bites szszlessg esetn a kdsz nem tartalmazza az
"1.F" formj mantissznak az "1." bevezet egszrszt. Ezt a bennfoglalt egyest az FPU
termszetesen minden mveletvgzskor automatikusan hozz gondolja a szmhoz.
A szabvny az albbi pontossgi osztlyokat definilja: Single (egyszeres), Double (dupla),
Extended (kiterjesztett) s Quadruple (ngyszeres). Minden egyes pontossgi osztlyhoz rgztve
van az egyes mezk szlessge s a rtk is. Az egyes lebegpontos szmformtumokat egy
tblzatban sszefoglalva tekintheti meg.
byte# 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Single
=127
-------------32-----------------
|S|-C:8-|-------F:23---------|
Double
=1023
-----------------------------------------------64-----------------
|S|-C:11-|----------------------------------------F:52---------|
Extended
=16383
----------------------------------------------------------------80-----------------
|S|--C:15--|----------------------------------------------------1.F:64---------|
Quadruple
=16383
-----------------------------------------------------------------------------------------------------------------128-----------------
|S|--C:15--|------------------------------------------------------------------------------------------------------1.F:122---------|

A szabvny lehetv teszi a nagyon kis szmok denormalizlt brzolst, rgzti tovbb a +0 s
-0 rtkeket, a + s - rtkeket valamint a NaN (Not a Number) rtket is. Tovbbi
informcik a szabvnybl tudhatk meg.
2001, Szikora Zsolt 42 / 49 Kdrendszerek
6.4.5 Gyakorl feladatok
2001, Szikora Zsolt 43 / 49 Kdrendszerek
6.4.6 Gyakorl feladatok megoldsa
2001, Szikora Zsolt 44 / 49 Kdrendszerek
6.5 Alfanumerikus kdok
Az Alfanumerikus kdok mindegyike egy-egy elterjedt, elfogadott megllapodson alapul
kdtblzatot jelent. A ma hasznlt alfanumerikus kdok egyik se a 6 bites telex kd volt. Az
EBCDIC kdols a msik nagy reg 8 biten kdolt egy-egy karaktert nagygpes
krnyezetben ez utbbi kdrendszer mg ma is elfordul. A mszaki alkalmazsok
szempontjbl legfontosabb kt alfanumerikus kdrendszer jelenleg az ascii kd s a unicode
ezeket vizsgljuk a tovbbiakban.
6.5.1 ASCII
Az ASCII (ejtsd: eszki) kd az egyik legrgebbi s egyben az egyik legelterjedtebb
alfanumerikus kdrendszer. A szabvnyos American Code for Information Interchange az ANSI
ltal elfogadott, karakterenknt 7 bitet hasznl kdtblzatot jelent. A kdsz kt legnagyobb
helyirtk bitje a kdsz tpust adja meg, a tovbbi t bit pedig konkrtt teszi a karakter
jelentst.
? x x x x x x x
00 vezrl karakter
01 matematikai s egyb jelek, szmok
10 Angol bc NAGYbeti
11 Angol bc kisbeti
A ? helyn az eredeti ASCII kdban soha nem szerepelhetett semmi; csupn azt jelzi
szmunkra, hogy a 8 bites kdszhoz mg hinyzik egy bit! Az ASCII kdtbla felptst a 6-6.
bra jelzi. Az tblzat peremezsn szerepl $ szimblummal kezdd szmok az egyes
kdszavak ASCII kdjnak fels illetve als 4 bitjre utalnak rtelemszeren. Pl. a G karakter
a $40 oszlop $07 sorban tallhat, teht ASCII kdja hexadecimlis 47, azaz 1000111.
$00 $10 $20 $30 $40 $50 $60 $70
$00 NUL DLE space 0 @ P ` p
$01 SOH DC1 ! 1 A Q a q
$02 STX DC2 " 2 B R b r
$03 ETX DC3 # 3 C S c s
$04 EOT DC4 $ 4 D T d t
$05 ENQ NAK % 5 E U e u
$06 ACK SYN & 6 F V f v
$07 BEL ETB ' 7 G W g w
$08 BS CAN ( 8 H X h x
$09 HT EM ) 9 I Y i y
$0A LF SUB * : J Z j z
$0B VT ESC + ; K [ k {
$0C FF FS , < L \ l |
$0D CR GS - = M ] m }
$0E SO RS . > N ^ n ~
$0F SI US / ? O _ o

6-6. bra
A vezrl karakterek kzl nhny fontosabb jelentsvel szintn rdemes tisztban lennnk:
NUL = Null = Semmi (res karakter)
Ennek a karakternek a vtelekor abszolt semmi sem
trtnik. Kizrlag hely-kitlt szerepe van.
2001, Szikora Zsolt 45 / 49 Kdrendszerek
BEL = Bell = Csengets
Hatsra a vev csenget egyet [spol a nyomtat
vagy a konzol]. Figyelemfelhvsra hasznljk.
HT = Horizontal Tabulator = Vzszintes tabultor
A nyomtatfej/kurzor a legkzelebbi tabultor
pozcihoz ugrik.
LF = Line Feed = Soremels
A nyomtatfej/kurzor a jelenlegi pozci alatti helyre,
azazz egy sorral lejjebb ugrik.
CR = Carriage Return = Kocsi vissza
A nyomtatfej/kurzor a pillanatnyi sor elejre ugrik.
FF = Form Feed = Lapdobs
A nyomtats/megjelents a kvetkez res
oldal/kperny kezd pozcijnl folytatdik. Lap-
nyomtatk ennek a karakternek a vtelekor kezdik a
puffer memriban sszegyjttt adatok paprra
nyomtatst.
BS = Back-Space = Visszatrls
A kurzor egyel balra lp, s a kurzor alatti karakter
helyre szkz (space) kerl.
ESC = Escape = Menekls kilps az ASCII kdrendszerbl
Az ESC jelzi, hogy a tovbbi karakterek nem ASCII
karakterekknt rtelmezhetk. A nyomtatkat grafikus
zemmdba kapcsol parancs pldul mindig ESC-vel
kezddik. (Vigyzat! A szmtgp billentyzetnek
ESC gombja ms funkcit tlt be!)

A "?xxxxxx" felpts ASCII kd MSB-jt a gyakorlatban szinte mindig belltjk valamilyen
szably szerint. A ? bit kitltsre hrom mdszer knlkozik.
Az MSB rtke mindig legyen 0!
Az MSB rtke tartalmazzon valami olyan informcit, ami fokozza a kldtt karakterek
tvitelnek megbzhatsgt: az MSB legyen paritsbit!
Bvtsk ki az ASCII kdtblzatot 8 bitess!
Mindhrom tletet rdemes rszletesebben tanulmnyoznunk! Lssuk ket sorban
1. Az MSB rtke mindig legyen 0!
Ezt a mdszert pl. akkor tapasztalhatjuk meg, ha egy rgebbi SMTP protokolt (nem pedig
a nyolc bites karakterek tvitelt is lehetv tev ESMTP-t) hasznl szerveren thalad a
8 bites kdolst hasznl, kezeteket is tartalmaz e-mail. Mivel az USA-ban nincs
szksg kezetes karakterekre, az ottani szerverek szmra termszetes, hogy egy rott
szvegben csak 0 127 kztti rtk ASCII karakterek tallhatk egy ilyen szerver
szmra teht abszolt termszetes, hogy az kezetes magyar szveg rajta thaladva
torzul. Egy pldaszveg:
me, jl lthat, amint az KEZETES BETK megjelennek
KLBBZ KDOLSSAL egy magyar nyelv szvegben.
2001, Szikora Zsolt 46 / 49 Kdrendszerek
Ebben a ngysornyi rsban fellelhet a magyar nyelv minden
klnleges betje. gyhogy nem is hzom tovbb...
Torzuls utn ugyanaz a szveg.
me, jsl lathats, amint az IKEZETES BET[K megjelennek
K\LVBBVZU KSDOLASSAL egy magyar nyelv{ szvvegben.
Ebben a nigysornyi mrasban fellelhetu a magyar nyelv minden
k|lvnleges bet{je. Zgyhogy nem is hzzom tovabb...
2. az MSB legyen paritsbit!
Ez a mdszer a kdszban lv 1-esek darabszmt az gynevezett paritsbit
felhasznlsval kiegszti egy oly mdon, hogy a paritssal kiegsztett kdszban az 1-
esek darabszma mindig pros vagy pratlan legyen. Ha a kiegszts pros darabszmra
trtnik, akkor pros parits rendszerrl van sz, ellenben pratlan paritsi rendszerrl
beszlnk.
A DIGIT karaktersort pros parits esetben az albbiak szerint kdolhatjuk.
Az tvitel sorn jl felismerhet az egyetlen bithiba.
Ha a bitfolyam brmely kdszava megsrl, akkor a vev ezt
rgtn szre is veszi a parits ellenrzsekor. Ilyenkor krheti jra
az adst.

Ha keresztirny paritst (a pldban: k.par.) is tartalmaz a rendszer, akkor mg a hiba
helye is meghatrozhat, s a hibs bitet a vev automatikusan kijavthatja a teljes
adatblokk jrakldsnek krse nlkl. Ezt a mdszert rgebben hasznltk modemes
kommunikcihoz. J elenleg nem ebben a formban alkalmazzk ugyan, a paritsos
adatellenrzs mdszere azonban nagyon elterjedt mig is a mszaki informatikai
alkalmazsokban.
3. Bvtsk ki az ASCII kdtblzatot 8 bitess!
Ezt a mdszert hasznlja a kiterjesztett ASCII szabvny. Egy kln cmet is megrdemel.
6.5.2 Kiterjesztett ASCII; kdlapok
A 7 bites ASCII kd 128 elem karakter-kszletbe nem frt bele a fontosabb latin bets rst
hasznl nyelvek minden kezetes karaktere. Ha 8 bitesre bvtjk a kdteret, akkor a 128 255
kztti kdszavakhoz hozz lehet rendelni a klnbz kezetes betket, st egyb jelekre is
marad hely.
A kiterjesztett ASCII lehetv teszi az kezetes karakterek hasznlatt, de sajnos a 128 karakter
nem elegend arra, hogy minden nemzet kezetes beti belefrjenek. A megoldst az jelenti,
hogy az ASCII kd kiterjesztett kdszavait a vilg s az alkalmazsok ms-ms terletein
mskppen rtelmezik. Egy rtelmezsi rendszert egy kdlapnak szoktak hvni. Egy megjelent
eszkz egyszerre csak egy kdlap szerint kpes a karaktereket megjelenteni. j kdlap
hasznlathoz kijelz-zemmdot kell vltani.
Nhny elterjedtebb kdlap:
DOS 437 (IBM PC 8 bites alaprtelmezett ASCII kdja)
DOS 852 (Latin 2 kiterjeszts, DOS esetn a Magyar Szabvny szerint ktelezen elrt)
D 11100100
I 01101001
G 11000111
I 01101001
T 01110100
k.par. 01110111
2001, Szikora Zsolt 47 / 49 Kdrendszerek
ANSI 1250 (Windows Magyar Szabvny)
ANSI 1252 (Windows USA)
ISO 8859-1, ISO 8859-2
Az egyes kdlapok sok esetben hasonl betket kdolnak ugyanazzal a bitsorozattal, azonban ez
nem mindig teljesl; pldul az 1101 0101 kdsz hatsra
o a magyar Windows karaktert,
o az amerikai Windows karaktert,
o a magyar DOS karaktert,
o az amerikai DOS pedig karaktert jelent meg,
Pldakppen az ANSI 1250 kdlap felptse (Magyar Windows):
$80 $90 $A0 $B0 $C0 $D0 $E0 $F0
$00 space space
$01
$02
$03
$04
$05
$06
$07
$08
$09
$0A
$0B
$0C
$0D -
$0E
$0F

Ez a mdszer teht nem oldja meg teljesen az kezetes betk problmjt: egyrszt mindig a
megfelel kdlap szerint kell a karaktereket kdolnunk s megjelentennk is. azt pedig nem
mindig lehet egyrtelmen kiderteni, hogy a szveg milyen kdlap szerint kszlt; msrszt a
tbbnyelv szvegek esetn nem oldhat meg a helyes megjelents. (Egy megjelent eszkz
egyszerre csak egy kdlap szerint kpes a karaktereket megjelenteni. j kdlap hasznlathoz
zemmdot kell vltani.)
6.5.3 UNICODE
A 16 bites UNICODE karaktertblzatot az Apple s a Xerox ltal alaptott Unicode Consortium
hozta ltre azzal a szndkkal, hogy egyetlen kdtblban foglaljk ssze a vilg npei ltal
hasznlt valamennyi bc sszes rsjelt.
Tizenhat biten sszesen 65536 karaktert lehet brzolni, ami azt jelenti, hogy a klnfle latin,
grg, hber, arab, rmny s ciril bcken kvl a kdtbla tartalmazza az si szanszkrit nyelv
betit, matematikai jeleket, a knai, japn s koreai kprs jeleit, st mg az egyiptomi
hieroglifkat is. (Ez utbbi mg nincs a szabvnyban, pedig hely lenne r.)
A 64 kilobjtos kdlap 256 bjtos blokkokra van felosztva: a klnfle nyelvek bcinek
blokkonknt osztjk ki a helyet. A legels blokkot az ISO Latin 1 szabvny kapta, vagyis a csak
2001, Szikora Zsolt 48 / 49 Kdrendszerek
Latin 1 karaktereket hasznl szveg karaktereinek egyik bjtja mindig nulla, a msik pedig a
Latin 1 kd. (A Latin 1 kdtbla als 128 karaktere megegyezik a 7 bites ASCII kdtbla
karaktereivel, az ASCII kompatibilits teht magtl rtetdik.)
Hatvantezer karaktert persze nem lehet egyik naprl a msikra kiosztani, gy a tblzat egy rsze
(az brn "lefoglalt terlet" nven szerepel) egyelre mg res.
A legnagyobb feladatot a tvol-keleti bck kdolsa jelenti: itt a szabvny kszti a CJ K
Research Group (CJ K =China, J apan, Korea) munkjra tmaszkodtak. A "Han Unification"
program keretben a CJ K csoport kutati sszegyjtik a hrom nyelv kzs rskpeit. Eddig
tizenegyezer jelet kategorizltak s helyeztek el a Unicode kdtblban. (Azok az rskpek,
melyeket csak egy nyelv hasznl, kln blokkban kapnak helyet.)
A kdtbla utols kt blokkjban van egy "sajt hasznlat"
terlet, aminek kiosztsrl a szabvny nem rendelkezik, ezt az
alkalmazsok hasznlhatjk sajt cljaikra (pldul
vezrlkarakereknek). A kdtbla utols kt helye (U+FFFE s
U+FFFF) verziszmot tartalmaz, amit a programok a
kompatibilits ellenrzsre hasznlhatnak fel.
Az alaptk utn hamarosan a szmtstechnikai ipar
meghatroz vllalatai (Adobe, Aldus, Borland, Digital, IBM,
Lotus, Microsoft, NeXT, Novell, Sun, stb.) is csatlakoztak a konzorciumhoz, nemrgiben pedig
az ISO is elfogadta az Unicode-ot ISO 10646 szabvnynak rszeknt. gy tnik, semmi sem ll
a Unicode elterjedsnek tjban.
Egycsapsra megolddott volna a szoftverek nemzektziestsnek krdse? Nos, gy tnik,
hogy elvileg igen. Van azonban pr gyakorlati nehzsg. Az els mindjrt az, hogy ha 8 bitesrl
16 bitesre nveljk a karaktereink mrett, szveges dokumentumaink mrete azonnal a
ktszeresre nvekszik. (Ez persze gy csak a tiszta szveges fjlokra igaz, a legtbb szveg- s
kiadvnyszerkeszt a szvegen kvl mindenfle misztikus binris informcit is trol a
dokumentumban, amire a mretnvekeds termszetesen nem vonatkozik Az ilyen
dokumentumok mrete a 16 bites karakterekre val ttrssel csak mintegy 20 - 25 szzalkkal
nvekszik.)
A kettes szm nehzsg az, hogy nem elg egy karaktert trolni, azt meg is kell tudni jelenteni.
Ez pedig azt jelenti, hogy szksgnk van egy olyan fontkszletre, amely az sszes karaktert
tartalmazza, vagy legalbbis kzlk azokat, amiket hasznlni szeretnnk. Ellenkez esetben
ugyanis csak egy tglalap vagy egy szkz fog megjelenni, mivel itt nem arrl van sz, hogy egy
ltez karaktertblra rdefiniltak egy msikat, mint ahogyan tettk azt a 437, 850, 852 8 bites
kdtblk esetn. Azt pedig a szabvny nem rja el, hogy mi jelenjen meg egy karakter helyett,
ha az brzolshoz szksges kperny-bettpus nem ll rendelkezsre.
Tovbbi nehzsget okozhat a fontfjlok mrete. A Windows 3.1-ben egyetlen 256 karaktert
tartalmaz betkszlet megjelentshez egy 64 kilobjtos True Type fontfjl szksges. A 16
bites kdtbla pontosan 256-szor ennyi rsjelet tartalmaz, a fontfjlok mrete is durvn ezzel
arnyos. Termszetesen nem valszn, hogy ktezer eltt pr vvel valaki mondjuk Kzp-
Eurpban a szanszkrit bct szeretn hasznlni, a betk jelents rszt teht btran ki lehet
hagyni a fontfjlbl, csak krds, hogy melyikek legyenek azok? (Murphy trvnye szerint
ugyanis valakinek mindig pont egy hinyz karakterre lenne szksge.)
2001, Szikora Zsolt 49 / 49 Kdrendszerek
Hossz tvon minden bizonnyal az Unicode jelenti a jvt, a vezet szmtstechnikai cgek
stratgiai dntsei legalbb is erre engednek kvetkeztetni. A kezdetektl fogva Unicode alap a
Windows NT teljes bels rendszere (a fjlok s objektumok nevei, stb.), s Unicode karaktereket
hasznl a SUN sikeres programozsi nyelve, a J ava is.

Você também pode gostar