Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Кодирование информации и системы счисления. Учебное пособие
.pdf
81
5. АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ
В ПОЗИЦИОННЫХ СИСТЕМАХ СЧИСЛЕНИЯ
Рассмотрим основные арифметические операции: сложе-
ние, вычитание, умножение и деление. Правила выполнения
этих операций в десятичной системе хорошо известны — это
сложение, вычитание, умножение столбиком и деление углом.
Данные правила применимы и ко всем другим позиционным
системам счисления. Только для каждой системы нужно пользоваться особыми таблицами сложения и умножения.
5.1. ОПЕРАЦИЯ СЛОЖЕНИЯ
При выполнении любой операции результат ищется согласно соответствующим правилам, которые удобно представлять в табличной форме, где для всех возможных комбинаций
значений одноразрядных операндов приводятся значения результата.
Таблицы сложения легко составить, используя правила счета.
5.1.1. Сложение в двоичной системе счисления
Рис. 5.1. Правила сложения в двоичной системе счисления
Примечание. Все возможные значения первого слагаемого задаются во второй и третьей строках первой колонки; все
возможные значения второго слагаемого — во второй и третьей
колонках первой строки. На пересечении отмеченных значениями операндов строк и колонок располагается результат их сложения.

82
В общем случае при формировании значения в текущем
разряде результата приходится дважды применять приведенную
таблицу сложения: первый раз при сложении соответствующих
разрядов операндов, формируя так называемую поразрядную
сумму, и второй раз — при сложении разряда сформированной
поразрядной суммы и переноса, пришедшего из ближайшего
младшего разряда.
При машинной реализации операции сложения сначала
формируется поразрядная сумма операндов без учета переноса,
далее формируется код переноса и затем с помощью специальных логических цепей учитываются возникшие переносы. При
этом перенос, возникший в некотором разряде, может изменить
не только ближайший старший разряд, но и целую группу старших разрядов. В худшем случае перенос, возникший в самом
младшем разряде, может изменить значение старших разрядов
сформированной поразрядной суммы вплоть до самого старшего.
При формировании поразрядной суммы и учете возникших переносов используется следующая классификация разрядов складываемых операндов:
– разряд, генерирующий перенос (оба операнда в этом
разряде имеют значение «1»);
– разряд, пропускающий перенос (операнды в этом разряде имеют разные значения);
– разряд, блокирующий распространение переноса (операнды в этом разряде имеют одинаковые значения).
Пример 1. Сложить числа 1510 и 610 в двоичной системе
счисления (11112 + 1102):
1 1 1 1
+
1 1 0
1 0 1 0 1
Ответ: 1510 + 610 = 11112 + 1102 = 101012.
Проверка: 101012 = 1 · 24 + 0 · 23 + 1 · 22 + 0 · 21 + 1 · 20 =
= 16 + 4 + 1 = 2110.

83
Пример 2. Сложить числа 141,510 и 59,75
10
(10001101,12 +
+ 111011,112):
1 0 0 0 1 1 0 1, 1
+
1 1 1 0 1 1, 1 1
1 1 0 0 1 0 0 1, 0 1
Ответ: 10001101,12 + 111011,112 = 11001001,012.
Проверка: 11001001,012 = 27 + 26 + 23 + 20 + 2–2 = 201,2510.
5.1.2. Сложение в восьмеричной системе счисления
Рис. 5.2. Правила сложения в восьмеричной системе счисления
Пример 1. Сложить числа 1510 и 610 в восьмеричной системе счисления (178 + 68):
1 7
+
6
2 5
Ответ: 1510 + 610 = 178 + 68 = 258.
Проверка: 258 = 2 · 81 + 5 · 80 = 16 + 5 = 2110.

84
Пример 2. Сложить числа 141,510 и 59,7510 (215,48 + 73,68):
2 1 5, 4
+
7 3, 6
3 1 1, 2
Ответ: 215,48 + 73,68 = 311,28.
Проверка: 311,28 = 3 · 82 + 1 · 81 + 1 · 80 + 1 · 8
–1
= 201,2510.
5.1.3. Сложение в шестнадцатеричной
системе счисления
Рис. 5.3. Правила сложения в шестнадцатеричной системе счисления
Пример 1. Сложить числа 1510 и 610 в шестнадцатеричной
системе счисления (F16 + 616):
F
+
6
1 5

85
Ответ: 1510 + 610 = F16 + 6
16
= 1516.
Проверка: 15
16
= 1 · 161 + 5 · 160 = 16 + 5 = 2110.
Пример 2. Сложить числа 141,510 и 59,7510 (8D,816 + 3B,C16):
8 D, 8
+
3 B, C
C 9, 4
Ответ: 8D,816 + 3B,C
16
= C9,416.
Проверка: C9,416 = 12 · 161 + 9 · 160 + 4 · 16
–1
= 201,2510.
5.2. ОПЕРАЦИЯ ВЫЧИТАНИЯ
В ЭВМ в перечне выполняемых операций арифметического устройства никогда не присутствуют одновременно операция
сложения и операция вычитания. При этом, как правило, присутствует только операция сложения. Что же касается операции
вычитания, то она реализуется за счет прибавления к уменьшаемому значения вычитаемого, взятого с противоположным знаком.
5.2.1. Вычитание в двоичной системе счисления
Рис. 5.4. Правила вычитания в двоичной системе счисления
Примечание. В двоичной системе счисления все возможные значения вычитаемого задаются во второй и третьей строках первой колонки; все возможные значения уменьшаемого —
во второй и третьей колонках первой строки. На пересечении
отмеченных значениями операндов строк и колонок располагается результат вычитания второго операнда из первого. В таб-

86
лице знаком «*» отмечен случай, когда в текущем разряде результата получена единица при займе из ближайшего старшего
разряда.
На рис. 5.5–5.6 приведены примеры вычитания двух двоичных чисел.
Рис. 5.5. Примеры вычитания чисел в двоичной системе счисления
Рис. 5.6. Операция вычитания в двоичной системе счисления
5.2.2. Вычитание в восьмеричной системе счисления
Пример. Вычесть число 59,7510 из числа 201,2510 (3118 – 73,68):
3 1 1, 2
–
7 3, 6
2 1 5, 4
Ответ: 311,28 – 73,68 = 215,48.
Проверка: 215,48 = 2 · 82 + 1 · 81 + 5 · 80 + 4 · 8
–1
= 141,510.

87
5.2.3. Вычитание в шестнадцатеричной
системе счисления
Пример. Вычесть число 59,7510 из числа 201,2510 (C9,416 –
– 3B,C16):
C 9, 4
–
3 B, C
8 D, 8
Ответ: C9,4
16
– 3B,C
16
= 8D,816.
Проверка: 8D,8
16
= 8 · 161 + D · 160 + 8 · 16
–1
= 141,510.
5.3. ОПЕРАЦИЯ УМНОЖЕНИЯ
При умножении многоразрядных операндов (особенно в де-
сятичной системе счисления), как правило, используется метод,
при котором формирование произведения выполняется за счет
суммирования частичных произведений, которые оформляются
посредством умножения множимого на отдельные разряды множителя с учетом веса соответствующего разряда множителя.
5.3.1. Умножение в двоичной системе счисления
Умножение в двоичной системе счисления задается в таб-
личной форме (рис. 5.7).
Рис. 5.7. Правила умножения в двоичной системе счисления
Примечание. Все возможные значения множимого зада-
ются во второй и третьей строках первой колонки; все возможные значения множителя — во второй и третьей колонках пер-

88
вой строки. На пересечении отмеченных значениями операндов
строк и колонок располагается результат умножения первого
операнда на второй.
«Таблица умножения одноразрядных операндов в двоич-
ной системе существенно упрощает задачу формирования частичного произведения:
– частичное произведение для разряда множителя равня-
ется нулю, если этот разряд равен нулю;
– частичное произведение для разряда множителя равня-
ется множимому, взятому с соответствующим весом, если разряд множителя равен единице.
При последовательном способе формирования частичных
произведений последние могут рассчитываться поочередно для
отдельных разрядов множителя, начиная с младшего или старшего разряда. При десятичном основании, как правило, формирование частичных произведений осуществляется, начиная
с младшего разряда множителя.
Пример 1. Найти произведение двоичных чисел 1011
и 1101, начиная формирование частичных произведений со
старшего разряда множителя.
Решение.
При формировании частичных произведений, начиная со
старшего разряда множителя, процесс формирования произведения заданных операндов можно представить следующим образом» (рис. 5.8)11:
Рис. 5.8. Пример умножения двоичных чисел
(со старшего разряда множителя)
11
Операция умножения // Файловый архив для студентов: сайт. URL: https://stud-
file.net/preview/2527416/page:5/ (дата обращения: 29.03.2022).

89
Пример 2. Найти произведение двоичных чисел 1011
и 1101, начиная формирование частичных произведений с младшего разряда множителя и применяя учет сформированных частичных произведений по мере их формирования.
Решение (рис. 5.9).
Рис. 5.9. Пример умножения двоичных чисел
(с младшего разряда множителя)
Примечание. В данном примере для того, чтобы учесть
то, что очередной разряд множителя имеет вес в два раза больший, чем предыдущий разряд, его частичное произведение учитывается со сдвигом множимого на один разряд влево при суммировании с промежуточным результатом. В таком случае говорят, что умножение выполняется со сдвигом множимого.
Однако для учета того, что очередное частичное произведение имеет вес, в два раза больший веса предыдущего частичного произведения, можно при суммировании сдвигать вправо
промежуточный результат. В таком случае говорят: умножение
выполняется со сдвигом промежуточного результата.
При использовании данного подхода умножение чисел
1101 и 1011 представляется в виде следующих действий (рис. 5.10):

90
Рис. 5.10. Результат умножения со сдвигом промежуточного результата
В первой колонке приведены номера отрабатываемых разрядов множителя, начиная с младшего. Эти номера отмечают
строки, в которых учитывается частичное произведение, соответствующее этому разряду множителя. В этой же первой колонке расположены единицы переполнения, возникающие при
суммировании промежуточного результата и очередного частичного произведения, сформированного для соответствующего отрабатываемого разряда множителя (в данном случае единица переполнения имеется при отработке четвертого, самого
старшего, разряда множителя).
Вторая колонка отражает длину основной разрядной сетки
(n = 4).
В третьей колонке представлены разряды промежуточных
и конечного произведений, «вытолкнутых» за пределы основной
разрядной сетки в процессе выполнения очередного сдвига промежуточного произведения.
Из приведенного примера видно, что выталкиваемые за
пределы разряды промежуточных произведений в дальнейшем
не изменяются и их значение не влияет на значение суммы,
формируемой в пределах основной разрядной сетки. Поэтому
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
