Raqamlarni teskari va qo'shimcha kodlarda qo'shish xususiyatlari.
Ikkala komplement sonini qo'shganda, ishora bitidagi hosil bo'lgan defis bo'linmasi bekor qilinadi.Teskari kodga raqamlarni qo'shganda, belgi bitidagi natijada ko'tarish birligi kod summasining eng kichik bitiga qo'shiladi.Agar arifmetik amallarning natijasi manfiy son bo'lsa, uni to'g'ridan- to'g'ri kodga o'tkazishingiz kerak.
Bunday holda, teskari kod imzolangan qaramaqarshi raqamlardan tashqari
barcha raqamlardagi raqamlarni to'g'ridanto'g'ri almashtirishga aylantiriladi. To'ldiruvchi kod oldinga yo'naltirilgan kodga,shuningdek orqaga qarab aylantiriladi, so'ngra bittasi eng kichik bitga qo'shiladi.
Misol Ikkala X va Y sonlarni teskari va ikkalasining to'ldiruvchisini qo'shing.
a) X = 111, Y = 11;
1) Ikkilik arifmetik qoidalar yordamida raqamlarni qo'shing:
2) kodlar yordamida raqamlarni qo'shing:
To’g’ri kod
|
Teskarida qo’shish
|
Qo’shimchada qo’shish
|
|
kodda
|
kodda
|
|
|
|
Qo'shish natijasi musbat sonning kodi (0 belgisi) bo'lgani uchun (X + Y) arr = (X + Y) add = (X + Y) pr.
b) X = 101, Y = 11;
1) Ikkilik arifmetik qoidalar yordamida raqamlarni qo'shing:
2) kodlar yordamida raqamlarni qo'shing:
To’g’ri kod
|
Teskarida qo’shish
|
Qo’shimchada kod
|
|
Kodda
|
Kodda
|
|
|
|
Yig'in manfiy raqamning kodi bo'lganligi sababli (1 belgi), natijalarni to'g'ridan-to'g'ri kodga aylantirish kerak:teskari koddan (X + Y) arr = 1.110100 (X + Y) arr = 1.0001011;qo'shimcha koddan (X + Y) add = 1.1110101 (X + Y) ex = 1.0001010 + 0.0000001 = 1.0001011.
Shunday qilib, X + Y = 1011 va olingan natija odatdagi yozuv bilan bir xil.
Do'stlaringiz bilan baham: |