A kód általános értelmezésben valamely információ halmazhoz egyértelmûen szimbólumok halmazát rendeli, vagyis a kód valamely információ kifejezésére, hordozására szolgáló rendszer, amely az információ elemeihez egyértelmûen kód-jeleket rendel. A kód fogalmába beleértjük ennek a hozzárendelésnek a szabályait, törvényszerûségeit, megállapodásait is. (a kódolásra sok példát mondhatunk az irányítószámtól akár a vércsoportok jelzésén át egészen az emberi beszédig.
A kódolás maga az a mûvelet, mellyel az adott információ elemeihez kód jeleket, szimbólumokat egyértelmûen hozzárendeljük. (A legtöbb esetben az “adott információ” is már kódolt, ilyenkor a kódolás az egyik kódról a másikra áttérést jelenti.) A dekódolás a kódolás inverz mûvelete, amelynek során visszatérünk az eredeti információra (kódra).
A jelkészlet, szimbólum-készlet azoknak az elemi jeleknek az összessége, amelyeket kódolásra felhasználhatunk (pl. az emberi beszédben a jelkészletnek a hangok ill. az ezeknek megfelelõ írásjelek összessége, az abécé felelhet meg.) A digitális technikában kétértékû (bináris) kódokkal dolgozunk. Ez igazodik legjobban a kétállapotú elemek, alkatrészek fizikai mûködéséhez.
Kódszó részletnek nevezzük azoknak a kódszónak az összességét, amelyek az adott rendszerben kódolásra felhasználhatók. Lehetnek olyan szavak kódkombinációk is, amelyek formailag megfelelnek az adott rendszer szóalkotási szabályainak, de nem tartoznak a kódszó készletbe, ezeket “tiltott szavaknak” szokás nevezni. Egy kód jellemzéséhez mindig hozzá tarozik a kódszó készlet ismertetése is, rendszerint táblázatos formában.
A kódolt információ jellege szerint a kódok lehetnek:
Numerikus kódok, amelyek számok kifejezésére alkalmasak. (Legfontosabb a bináris-szám kód de fontos a BCD, egylépéses kódok stb.)
Alfanumerikus kódok, amelyek a számokon kívül betûk, írásjelek kódolására is alkalmasak. (TELEX, ASCII, EBCDIC…)
Numerikus kódok (szám kódok)
1. Bináris szám kód: A kétállapotú
elemeket felhasználó berendezéseket olyan
digitális jellel kell mûködtetnünk , amely szintén
kétféle értékû lehet, vagyis szokásos
szóhasználattal bináris.
Egy-egy kétállapotú elem egy adott idõpillanatban
egy elemi bináris egység, 1 bit feldolgozására,
tárolására alkalmas, amely tehát 0 vagy 1 értékû
lehet. Egy számítástechnikai adat megadásához
általában több bitre van szükség. Ezt a
bit-sorozatot adat szónak nevezzük. A szó összetartozó
8-bites részének szokásos neve: Byte (bájt).
Bármely bináris szám “szokásos” 10-es számrendszerbeli értékét meg tudjuk határozni, vagy pedig bármely decimális számot felírhatunk binárisban. A következõ táblázatban a bináris számrendszer táblázatát láthatjuk:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BCD (Binary Coded Decimal: binárisan kódolt decimális) számkódok használatakor a decimális számok jegyeit adjuk meg 4-4 bittel. Ez például akkor hasznos, amikor eredményeket adatokat, kijelzésre alkalmassá, az ember számára könnyen érthetõvé kell tennünk. Négy bittel 16 különbözõ kódszót lehet elõállítani, ebbõl 10-et tekintünk megengedettnek (vagyis a BCD-ben mûködõ áramkörök nincsenek teljesen kihasználva, ez az ára a könnyebb kijelezhetõségnek). A szokásos BCD kódnak nevezett 8-4-2-1 súlyozású kód készletét a 0000-tól 1001-ig terjedõ bináris számok alkotják (a 1010 és ennél nagyobb számok tiltottak, megjelenésük a rendszerben hibát jelezhet).
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Például: 3857 decimális szám megfelelõje BCD kódban:
3857=0011 1000 0101 0111
Léteznek egyéb BCD kód-változatok is, amelyekkel esetenként méréstechnikában automatizálásban találkozhatunk. Ezekre mutat be néhány példát a következõ táblázat:
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Olyan esetekben, amikor például digitális helyzetérzékelést valósítunk meg azért, hogy a számítógépes feldolgozás, irányítás lehetõvé váljék, a bináris vagy BCD kód nem a legmegfelelõbb. Egy egyenesvonalú elmozdulást érzékelõ ún. kódléces érzékelõ vázlatát mutatja a 10.9 ábra.
Az egylépéses kódok: Ha a szomszédos kódszavak a lehetõ legkevésbé, vagyis 1 helyiértéken térnek csak el egymástól akkor a hiba sem lehet ennél nagyobb. A mûszeriparban és az automatizálásban a legelterjedtebb egylépéses kód a GRAY kód (“reflected binary”: tükrözött bináris) kód. Táblázatunk elsõ néhány sorát megnézve megállapíthatjuk a felírás szabályát
(elsõ oszlopban: 1 db “0”, majd 2 db “1”, majd ismét 2 db “0”, 2 db “1” és így tovább, a második oszlopban: 2 db “0”, majd 4 db “1” és 4 db “0” felváltva, a harmadik oszlopban 4 db “0” majd 8 db “1” és 8 db “0” felváltva és így tovább). A táblázat a megfelelõ bit-szám bõvítéssel tetszés szerinti számig folytatható. Látszik a kódtáblázatból az is, hogy a szomszédos kódszavak valóban csak egy 1 bitben térnek el egymástól.
A másik leggyakoribb egylépéses
kód a JOHNSON-kód, amely pazarló (több bitet
igényel, n bit esetén a felírható Johnson kombinációk
száma: 2*n). Jellegzetességét az 5 bitre felírt
táblázat alapján könnyû felismerni: 00000-tól
haladva elõször mindig eggyel több 1-es lép be,
majd amikor elértük a csupa
1-esbõl álló kombinációt, a 0-ák
belépése következik. A Gray és a Johnson kódon
kívül természetesen még sokféle változat
létezik (GLIXON, O’BRIEN, TOMPKINS…), ezekkel itt nem foglalkoztunk.
A GRAY és JOHNSON kód bináris konverzióját
a Gyakorlatokban mutatjuk be.
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10.2.2 Alfanumerikus kódok (betû-szám-kódok)
A számítógépek, digitális berendezések nemcsak számok tárolását és feldolgozását végzik. Gyakran szükséges kezelõi utasítások gépi értelmezése, különféle üzenetek kiadása, ill. emberi nyelven írt szövegek, rövidítések feldolgozása. Ilyen esetekben betûk, írásjelek és számok, összefoglaló néven: karakterek bináris kódolását kell megvalósítani.
A karakterek bináris kódolásának vannak nemzetközileg elfogadott szabványai a bit számára és a kódtáblázatra. Ezek közül csak a legelterjedtebbeket érdemes példaként áttekinteni, más, hasonló kódok leírása, táblázata az illetõ kóddal mûködõ készülékek ismertetõiben vagy kézikönyvekben megtalálható. (Táblázatot sohasem érdemes megjegyezni, memorizálni, szükség esetén bármikor fellapozható a megfelelõ irodalomban, mindössze az alfanumerikus kódok “természetével” kell tisztában lennünk).
Az ASCII kód (American Standard Code for Information Interchange = amerikai szabvány kód információcseréhez) a legelterjedtebb alfanumerikus kód. A kódszavak 8 bitesek, ebbõl 7 bitet használnak a következõ karakter-fajták kódolására:
26 db latin nagybetû (41H…5AH)
26 db latin kisbetû (61H…7AH)
33db vezérlõ karakter (00H…1FH és 7FH.) ezek nem nyomtatásra valók, hanem az adatforgalom szervezésére, az írógép-nyomtató vezérlésére (pl.: CR=kocsi vissza, LF=soremelés,…), ill. a megelõzõ karakter törlésére (DEL) szolgálnak.
Egyéb, gyakran használatos alfanumerikus kódok
(amelyek táblázatának szükség esetén
utánanézhetünk), pl. az
EBCDIC (Extend BCD Interchange Code, amely 8 “hasznos” bittel kódolja
a karaktereket, BCD sorrendben), a SELECTRIC (8 bites, 1 bit paritás)
valamint az ISO kód (8 bites). Léteznek még számunkra
“különleges”, a fentiektõl lényegesen eltérõ
karakterkészletû (cirill
betûs, görög betûs, arab írásjeles,
japán karakteres ill. grafikus ábra-elemeket tartalmazó)
kódrendszerek is.