Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Сложение двоично-десятичных чисел
Сложение двоично-десятичных чисел производится по правилам двоичной арифметики, с учетом переносов. Пусть имеем два десятичных числа А и В. Требуется найти сумму С = А + В. В каждой тетраде выполняется сложение трёх чисел - двух слагаемых и переноса из предыдущего разряда, т.е. аn + bn + pn-1. При этом возможны такие ситуации. 1) аn + bn + pn-1 < 10. А = 14 В = 23 С = А + В = 37 А = 0001 0100 В = 0010 0011 С = 0011 0111 37 Ответ получился верный.
2) аn + bn + pn-1 > 15. А = 47 В = 39 С = А + В = 86 А = 0100 0111 В = 0011 1001 С = 1000 0000 80 Ответ получился неверный, так как был перенос из младшей тетрады в старшую. Тетрада переполняется числом 16, т.е. единица межтетрадного переноса уносит в старшую тетраду 16, а не 10 единиц как в десятичной системе счисления (шесть лишних единиц!). Поэтому результат необходимо скорректировать путём добавки + 6. Выполним коррекцию С = 1000 0000 0000 0110 - коррекция (+ 6) ответ 1000 0110 86 Ответ правильный.
3) 10 аn + bn + pn-1 15 А = 47 В = 36 С = А + В =83 А = 0100 0111 В = 0011 0110 С = 0111 1101 Ответ неверный, хотя и нет межтетрадного переноса, но имеется запрещённая комбинация. Необходимо вызвать искусственное переполнение тетрады путём добавки +6. Выполним коррекцию С = 0111 1101 0000 0110 - коррекция (+ 6) ответ 1000 0011 83 Теперь ответ правильный. Внимание! Коррекция результата выполняется только один раз, поэтому межтетрадный перенос при коррекции не требует ещё одной коррекции. Таким образом, при сложении двоично – десятичных чисел выполняется коррекция результата по правилу – если был межтетрадный перенос (переполнение тетрады) или получилась запрещённая комбинация, то к этой тетраде добавляется + 6 (0110). Ещё один пример. А = 479 В = 128 С = А + В = 607 В старшей тетраде коррекция 0, в средней - +6 (запрещённая комбинация), в младшей тетраде +6 (был перенос).
|