Mi a súlyozott és nem súlyozott kódolás?
A számítógépekben és más elektronikus eszközökben látható digitális áramkörök csak kétféle módon tudnak kommunikálni:be és ki. Ezeket a fogalmakat bináris számozás formájában ábrázoljuk, ahol a 0 ki van kapcsolva, az 1 pedig be van kapcsolva. A számítógéppel való valódi kommunikációhoz további átalakításokra van szükség, hogy a számítógépes nyelvet emberibb formátumba hozzuk. Az átalakítási folyamat első lépése a bináris kódolás olvashatóbb decimális rendszerré alakítása. A súlyozott és nem súlyozott kódolás arra a módszerre vonatkozik, amelyben a bináris számokat decimálissá alakítják. Súlyozott kódolás esetén a szám minden számjegyéhez súlyozott értéket rendelnek az átalakítás előtt. A nem súlyozott kódolási módszerek kissé eltérő képleteket használnak, de az átalakításokat súlyérték nélkül hajtják végre.
A súlyozott kódolás megértése előtt először meg kell értenie a számozási rendszereket és a pozíciójelöléseket.
Számozási rendszerek
A számozási rendszereket egy alap jelzi, amely a legmagasabb szám, amelyre számolhat, mielőtt újabb számjegyet kellene hozzáadnia. Például azt a számozási rendszert, amelyet mindannyian gyerekként tanulunk, 10-es alapnak hívják, mivel a sorozat első tíz számjegye, 0-tól 9-ig, egyjegyű számjegyekkel számolható meg. Ha eléri a 10-et, mindent át kell tolni, és kétjegyű számokkal kell számolnia, amíg el nem éri a 100-at, majd háromjegyű számokkal számol. Ezt a 10-es alaprendszert decimális rendszernek is nevezik.
Pozíciós jelölés
Pozíciós jelölés akkor történik, ha egy valós szám minden számjegyéhez pozícióértéket rendel, jobbról balra. Például a 4782-es szám esetében, a 2-vel kezdődően és jobbról balra számolva, a pozíciók 0, 1, 2, 3, a következőképpen:
4782 =szám 3210 =pozícióértékek
Súlyozott kódolás
A fenti példában a 0-tól 3-ig terjedő pozíció-hozzárendelések a hozzájuk rendelt számjegyek súlyozott értékei lehetnek. Tehát a 4 súlya 3, a 7 súlya 2. Egy szám súlya akkor lép életbe, amikor bármilyen alapszámozási rendszerről decimális (10-es) számrendszerre konvertálunk. A súlyozott szám konvertálásának egyik képlete az, hogy minden számjegyet megszorozunk az alapjával a pozíció hatványával, majd összeadjuk az összes kapott számjegyet. Az alábbi példában az 100101, amely egy bináris 2-es szám, decimális (10-es) számmá alakul.
100101 =bináris (2. bázis) szám 543210 =helyzeti súlyok (1 x 2^5) + (0 x 2^4) + (0 x 2^3) + (1 x 2^2) + (0 x 2^1) ) + (1 x 2^0) =32 + 0 + 0 + 4 + 0 + 1 =37 37alap10 =decimális konverzió
Egyéb súlyozott módszerek közé tartozik a BCD és a 2421, amelyek mindegyike hasonló képletet használ a súlyok hozzárendeléséhez és a decimálissá konvertáláshoz.
Nem súlyozott kódolás
A szürke kód egy nem súlyozott kódolási módszer, amely csak egy bitet változtat meg egy bináris számban, amikor egyik decimális számról a másikra lép. Normál bináris kódolás esetén a 10-es számjegyek a 2-es decimális számot jelölik. Szürke kód használatakor ennek a bináris számnak egy bitje megváltozik, így a 2-es decimális számot a 0011 bináris számjegyek képviselik. A 0011 bináris számjegyek képviselik, most 0010-re lesz konvertálva, mert csak az egy bit változhat.
Az Excess-3 egy másik nem súlyozott kódolási módszer, és régebbi számítógépekben és hozzáadógépekben használták. A 3-as felesleg esetén hozzáad 3-at egy decimális számhoz, mielőtt binárissá alakítaná. Így például a 2-es decimális szám először 3-mal nő, így 5 lesz. A 2 bináris átalakítása az Excess-3 módszerrel 0101 lenne a normál 0010 bináris értéke helyett.