Parity Kodu
Parity bit 'i: Dijital bilgilerin (dataların) iletiminde amplifikansyonlarında doğabilecek ve/veya dedeksiyon yanlışlıklarını düzeltebilmek için çalışma sahasını genişletmek gerekir. Hata taramalarında parity bit 'i kullanmak ideal bir yöntemdir.
Bir çok manyetik teyp ve diskler, parity dedeksiyon koduna sahiptirler. Böylece bilgisayarlarda bilgi, teyplerden veya disklerden aktarılırken, dedksiyon sırasında oluşabilecek hatalar, parity kodu sayesinde düzeltilerek doğru okunması sağlanır. Parity tek veya çift olabilir. İşlemlerde parity bit 'i binary sayılarındaki 1 veya 0 ile ifade edilir. ve 8421 BCD kodunun sağındaki birinci basamağa ilave edilir. Bu 8421 BCD kodundaki kelime karakterinin sağına ilave edilirken, ayrı veya bitişik yazılabilir.
Decimal |
BCD Kodu |
BCD ile Tek Parity |
BCD ile Çift Parity |
|
0000 |
0001 |
0010 |
0011 |
0100 |
0101 |
0110 |
0111 |
1000 |
1001 |
|
0000 1 veya 00001 |
0001 0 veya 00010 |
0010 0 veya 00100 |
0011 1 veya 00111 |
0100 0 veya 01000 |
0101 1 veya 01011 |
0110 1 veya 01101 |
0111 0 veya 01110 |
1000 0 veya 10000 |
1001 1 veya 10011 |
|
0000 0 veya 00000 |
0001 1 veya 00011 |
0010 1 veya 00101 |
0011 0 veya 00110 |
0100 1 veya 01001 |
0101 0 veya 01010 |
0110 0 veya 01100 |
0111 1 veya 01111 |
1000 1 veya 10001 |
1001 0 veya 10010 |
|
Tablo 1.2 - Parity bit 'i ile 8421 BCD kodu
Parity bitleri, BCD kodundan başka yerlerde de kullanılır.Gönderilecek kelimeler sabit ise, parity bitleri ilave edilir. Kelimelerdeki tek veya çift parity durumunu saptayabilmek için, her kelimedeki 1 'lerin toplamına bakılır. 1 'lerin toplamına bakılır. 1 'lerin toplamı tek ise, kelime tek parity 'li demektir. 1 'lerin toplamı çift ise, kelime çift parity 'li demektir.
| |
Kelime |
Parity bit 'i |
Parity tipi |
|
|
|
Tek Parity |
Tek Parity |
Çift Parity |
Çift Parity |
Tek Parity |
|
1, 3, 4 şıkları hatalı, 2 , 5 şıkları doğrudur. Çünkü tablo 1.1 ve 1.2 den bakacak olursak, BCD kodlamasında kullanılan son değer 9 ve bunun binary karakterinde 1001 olduğu görülür. Burada 4. şıkta verilen kelime karakteri 1010, decimal karşılığıda 10 olduğundan BCD kodu karakterine sahip değildir.
İlave, (Biquinary) ve Diğer BCD Kodları
Her ne kadar BCD kodları içinde 8421 kodu, çok kullanılan bir kod olsada, bir on 'luk aktarılmasında verimsizdir. Çünkü bu kod 'un son karakteri dokuz 'dur. Böyle durumlarda diğer kodlar kullanılır.
Binary sayıları ile hesaplama yapmak uygun değildir. Decimal sayıda bir onluk aktarması varsa, binary sayılarını toplarken, düzeltme olarak 0110 eklenir. Bir toplamada işlem yapılmadan önce, decimal sistemde bir taşımanın olup olmayacağını bilmek gerekir. Böyle elverişli olmayan durumlarda 0 - 9 'a kadar olan rakamlar için değişik kodlar kullanılır. Bir sayı 3 veya 4 bit 'le kodlanabildiği gibi, 7 bit 'le ve 10 bit 'le de kodlanabilir.
İlave Kodu
BCD olarak 0 - 9 sayıları, 3 - ilave (Excess - Three) kodu olarak tablo 1.3 de görülmektedir.
(0110)2 = (6)10 sayısını, 3 - ilave kod 'u ile ifade edebilmek için, bu sayıya (0011)2 = (3)10ilave etmemiz gerekir.
= 0110 + 0011 = 1001
= 6 + 3 = 9
Decimal |
BCD |
3 - ilave |
|
0000 |
0001 |
0010 |
0011 |
0100 |
0101 |
0110 |
0111 |
1000 |
1001 |
|
0011 |
0100 |
0101 |
0110 |
0111 |
1000 |
1001 |
1010 |
1011 |
1100 |
|
Tablo 1.3 - 3 - İlave kodu
** (3)10 + (9)10 = 3 - ilave kodu aritmetiği ile yapalım.
Toplama işleminin sonucunda bir üst basamağa taşınan sayı olduğundan, sonuca düzeltme olarak her sayı için 0011 ilave edilir.
Sonuç:
0100 = 1
0101 = 2
3 - ilave koduna göre 12 'nin yazılışı 0100 0101 dir. Bunu tablo 1.3 'de de görmeniz mümkündür.
Decimal sayılarıntoplanmasında bir üst basamağa aktarma olmaz ise, binary hesaplamada da aktarma olmaz. Bu durumda sonuca düzeltme olarak 1101 ilave etmek gerekir.
** 18 + 13 = (?); 3 - ilave kodu aritmetiği ile yapalım.
Tablo 1.3 'e göre sonuç: 0100 = 1, 1011= 8, 0100= 1, 0110= 3 bulunur.
Sonuç: 31 = 0110 0100 olur
Bu kodlama ile iyi bir hesaplama yapılır. Sayıların toplanması neticesinde, eğer bir on 'luk aktarması varsa "1", yoksa "0" taşıyıcısı değer olarak kabul edilir. Böylece işlemlerde sonuca hangi düzeltmenin yapılacağı kolayca anlaşılır.
Decimal |
3 - ilave kodu |
|
|
|
|
0101 |
|
|
0101 |
0110 |
|
1001 |
0101 |
1011 |
0110 |
0101 |
1010 |
0111 |
|