Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
программирование и основы алгоритмизации.doc
Скачиваний:
44
Добавлен:
21.08.2019
Размер:
4.84 Mб
Скачать

Арифметические действия в системах счисления с основанием, отличным от 10

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

Так же, как и в десятичной системе счисления, для выполнения арифметических действий необходимо знать таблицы сложения (вычитания) и умножения. Ниже представлены данные таблицы для двоичной системы счисления

Таблица 1

Сложение

Вычитание

Умножение

0 + 0 = 0

0 – 0 = 0

0 ∙ 0 = 0

0 + 1 = 1

1 – 0 = 1

0 ∙ 1 = 0

1 + 0 = 1

1 – 1 = 0

1 ∙ 0 = 0

1 + 1 = 10

10 – 1 = 1

1 ∙ 1 = 1

Пользуясь приведенными таблицами, произведем арифметические операции над двоичными числами.

В тех случаях, когда занимается единица старшего разряда, она дает две единицы младшего разряда. Если занимается единица через несколько разрядов, то она дает единицы во всех промежуточных нулевых разрядах и две единицы в младшем нулевом разряде.

Рассмотрим операции умножения и деления двоичных чисел.

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

Пример: Перевести число 1011110112 в десятичную систему счисления.

Поскольку 1010 = 10102, запишем

Полученные остатки, =10012 = 910, =1112 = 710, =112 = 310. Искомое число 1011110112 = 37910.

В случае перевода чисел из одной недесятичной системы в другую возникает сложность выполнения действий в недесятичной системе счисления. В этом случае удобнее может быть делать перевод в два этапа m10q, где m и q – основания систем счисления соответственно.

Двоично-восьмеричные и двоично-шестнадцатеричные преобразования

Двоичная система счисления удобна для выполнения аппаратными средствами микропроцессора арифметических действий, но неудобна для восприятия человеком, поскольку требует много разрядов. Поэтому в вычислительной технике помимо двоичной системы счисления широкое применение нашли восьмеричная и шестнадцатеричная системы счисления.

Рассмотрим перевод чисел из двоичной системы счисления в восьмеричную.

Запишем число x в полиномиальной форме. Получим

Разделим обе части полученного выражения на 8. Учитывая, что 8 = 23, получим

.

Таким образом, остаток от деления , что является двоичным разложением десятичного числа, лежащего в диапазоне [0; 7] (для изображения данной десятичной цифры в двоичной системе счисления требуется 3 разряда).

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

Пример: Преобразовать число 11011102 в восьмеричную систему счисления.

Объединяем двоичные цифры триады справа налево. Получаем

001 101 1102 = 1568.

Аналогичным образом производятся преобразования из двоичной системы счисления в шестнадцатеричную, только двоичные цифры объединяются в группы по 4 разряда (тетрады).

Пример: Преобразовать число 11011102 в шестнадцатеричную систему счисления.

Объединяем двоичные цифры триады справа налево. Получаем

0110 11102 = 6E16.