Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МЕТОД, УКАЗ, по 2-10 АРИФМЕТИКЕ.doc
Скачиваний:
5
Добавлен:
14.08.2019
Размер:
232.96 Кб
Скачать

Код Айкена 2-4-2-1

Таблица 4.

10сс

ПК

ОК

0

0000

1111

1

0001

1110

2

0010

1101

3

0011

1100

4

0100

1011

5

1011

0100

6

1100

0011

7

1101

0010

8

1110

0001

9

1111

0000

Этот код можно рассматривать как код с естественными весами для первых пяти цифр 0,1,2,3,4,а для остальных пяти цифр это код с избытком 6.

Код обладает свойством самодополняемости (сумма весов двоичных разрядов равна 9), так что обратный код любой тетрады можно получить инвертированием. Единственный недостаток этого кода в том, что старший разряд двоичной тетрады имеет искусственный вес.

Из особенностей формирования десятичных цифр вытекают следующие правила введения коррекции при алгебраическом сложении. Предварительно рассмотрим возможные варианты формирования тетрад суммы.

1. Обе исходные тетрады меньше 5, и единица переноса из данной тетрады не формируется. Здесь возможны два случая:

а) тетрада суммы тоже меньше 5, результат будет получен верный, значит коррекция не нужна;

б) тетрада суммы больше или равна 5, значит, для таких цифр надо искусственно сформировать избыток 6, следовательно, нужна коррекция кодом +610=01102.

2. Одна исходная тетрада меньше 5, а другая больше или равна 5. В этом случае возможны два варианта:

а) если нет переноса из тетрады суммы:

SK= AK+(BK+6)+CK – результат верный, коррекции нет.

б) если есть перенос из тетрады суммы в соседнюю старшую тетраду: SK= AK+(BK+6)+CK-16; SK= AK+BK++CK-10 -результат верный, коррекции нет.

3. Обе исходных тетрады больше или равны 5,значит, есть единица переноса из тетрады суммы в соседнюю старшую тетраду:

SK=(AK+6)+(BK+6)+CK-16=(АККК-10)+6

Здесь возможны два следующих случая:

а) если тетрада суммы больше или равна 5 – результат верный, коррекции нет;

б) если тетрада суммы меньше 5, не нужен избыток 6, значит, необходима коррекция кодом -610=-01102=1010ДК.

Таким образом, при алгебраическом сложении в коде 2-4-2-1 коррекция необходима в двух случаях:

1)если тетрады слагаемых меньше 5, тетрада суммы больше 4, необходима коррекция кодом +6=0110;

2)если тетрады слагаемых больше или равны 5, есть единица переноса из тетрады суммы, а сама тетрада суммы меньше 5, нужна коррекция кодом -6=1010.

Алгоритм сложения в коде 2-4-2-1

1. Проверить знаки слагаемых – отрицательные перевести в ОК путём инвертирования всех тетрад.

2. Сложить двоично-десятичные числа по правилам двоичной арифметики.

3. Выполнить коррекцию суммы в соответствии с изложенными выше правилами. При коррекции единицы переноса между тетрадами отбрасываются.

4. Проверить знак результата – отрицательный перевести в ПК путём инвертирования тетрад.

Пример.

Сложить десятичные числа А=-63,58 и В=46,74 в коде 2-4-2-1. Масштабируем операнды М=102 и кодируем цифры чисел в ПК:

АПК = 1,1100.0011.1011.1110.

ВПК = 0,0100.1100.1101.0100.

Переводим отрицательное число в ОК и складываем:

АОК = 1,0011. 1100. 0100.0001.

ВОК = 0,0100. 1100. 1101.0100.