Здесь и в дальнейшем при одновременном использовании нескольких различных систем счисления основание системы к которой относится число будем указывать в виде нижнего индекса
Таблица 1. Наиболее важные системы счисления.
Двоичная (Основание 2) | Восьмеричная (Основание 8) | Десятичная (Основание 10) | Шестнадцатиричная (Основание 16) | ||
триады | тетрады | ||||
0 1 | 0 1 2 3 4 5 6 7 | 000 001 010 011 100 101 110 111 | 0 1 2 3 4 5 6 7 8 9 | 0 1 2 3 4 5 6 7 8 9 A B C D E F | 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 |
1.2 Перевод чисел из одной системы счисления в другую.
Перевод чисел в десятичную систему осуществляется путем составления степенного ряда с основанием той системы, из которой число переводится. Затем подсчитывается значение суммы.
Пример.
а) Перевести 10101101.1012 "10" с.с.
Здесь и в дальнейшем при одновременном использовании нескольких различных систем счисления основание системы к которой относится число будем указывать в виде нижнего индекса.
10101101.1012 = 1 27+ 0 26+ 1 25+ 0 24+ 1 23+ 1 22+ 0 21+ 1 20+ 1 2-1+ 0 2-2+ 1 2-3 = 173.62510
б) Перевести 703.048 "10" с.с.
703.048 = 7 82+ 0 81+ 3 80+ 0 8-1+ 4 8-2 = 451.062510
в) Перевести B2E.416 "10" с.с.
B2E.416 = 11 162+ 2 161+ 14 160+ 4 16-1 = 2862.2510
Перевод целых десятичных чисел в недесятичную систему счисления осуществляется последовательным делением десятичного числа на основание той системы, в которую оно переводится, до тех пор, пока не получится частное меньшее этого основания. Число в новой системе записывается в виде остатков деления, начиная с последнего.
Пример.
а) Перевести 18110 "8" с.с.
Результат: 18110 = 2658
б) Перевести 62210 "16" с.с.
Результат: 62210 = 26E16
Перевод правильных дробей из десятичной системы счисления в недесятичную.
Для перевода правильной десятичной дроби в другую систему эту дробь надо последовательно умножать на основание той системы, в которую она переводится. При этом умножаются только дробные части. Дробь в новой системе записывается в виде целых частей произведений, начиная с первого.
Пример.
Перевести 0.312510 "8" с.с.
Результат: 0.312510 = 0.248
Замечание. Конечной десятичной дроби в другой системе счисления может соответствовать бесконечная (иногда периодическая) дробь. В этом случае количество знаков в представлении дроби в новой системе берется в зависимости от требуемой точности.
Пример.
Перевести 0.6510 "2" с.с. Точность 6 знаков.
Результат: 0.6510 0.10(1001)2
Для перевода неправильной десятичной дроби в систему счисления с недесятичным основанием необходимо отдельно перевести целую часть и отдельно дробную.
Пример.
Перевести 23.12510 "2" с.с.
1) Переведем целую часть: | 2) Переведем дробную часть: |
Таким образом: 2310 = 101112; 0.12510 = 0.0012.
Результат: 23.12510 = 10111.0012.
Необходимо отметить, что целые числа остаются целыми, а правильные дроби - дробями в любой системе счисления.
Для перевода восьмеричного или шестнадцатеричного числа в двоичную формудостаточно заменить каждую цифру этого числа соответствующим трехразрядным двоичным числом (триадой) (Таб. 1) или четырехразрядным двоичным числом (тетрадой) (Таб. 1), при этом отбрасывают ненужные нули в старших и младших разрядах.
Пример.
а) Перевести 305.48 "2" с.с.
б) Перевести 7B2.E16 "2" с.с.
Для перехода от двоичной к восьмеричной (шестнадцатеричной) системе поступают следующим образом: двигаясь от точки влево и вправо, разбивают двоичное число на группы по три (четыре) разряда, дополняя при необходимости нулями крайние левую и правую группы. Затем триаду (тетраду) заменяют соответствующей восьмеричной (шестнадцатеричной) цифрой.
Пример.
а) Перевести 1101111001.11012 "8" с.с.
б) Перевести 11111111011.1001112 "16" с.с.
Перевод из восьмеричной в шестнадцатеричную систему и обратно осуществляется через двоичную систему с помощью триад и тетрад.
Пример. Перевести 175.248 "16" с.с.
Результат: 175.248 = 7D.516.
1.3 Двоичная арифметика.
Правила выполнения арифметических действий над двоичными числами задаются таблицами двоичных сложения, вычитания и умножения.
Таблица двоичного сложения | Таблица двоичного вычитания | Таблица двоичного умножения |
0+0=0 0+1=1 1+0=1 1+1=10 | 0-0=0 1-0=1 1-1=0 10-1=1 | 0 0=0 0 1=0 1 0=0 1 1=1 |
При сложении двоичных чисел в каждом разряде производится сложение цифр слагаемых и переноса из соседнего младшего разряда, если он имеется. При этом необходимо учитывать, что 1+1 дают нуль в данном разряде и единицу переноса в следующий.
Пример. Выполнить сложение двоичных чисел:
а) X=1101, Y=101;
Результат 1101+101=10010.
б) X=1101, Y=101, Z=111;
Результат 1101+101+111=11001.
При вычитании двоичных чисел в данном разряде при необходимости занимается 1 из старшего разряда. Эта занимаемая 1 равна двум 1 данного разряда.
Пример. Заданы двоичные числа X=10010 и Y=101. Вычислить X-Y.
Результат 10010 - 101=1101.
Умножение двоичных чисел производится по тем же правилам, что и для десятичных с помощью таблиц двоичного умножения и сложения.
Пример. 1001 101=?
Результат 1001 101=101101.
Деление двоичных чисел производится по тем же правилам, что и для десятичных. При этом используются таблицы двоичного умножения и вычитания.
Пример. 1100.011 : 10.01=?
Результат 1100.011 : 10.01=101.1.
Упражнения 1.
1. Перевести следующие числа в десятичную систему счисления:
а) 1101112; б) 10110111.10112; в) 563.448; г) 721.358; д) 1C4.A16; е) 9A2F.B52.
2. Перевести следующие числа из "10" с.с в "2", "8", "16" с.с.:
а) 463; б) 1209; в) 362; г) 3925; д) 11355.
3. Перевести следующие числа из "10" с.с в "2", "8", "16" с.с. (точность вычислений - 5 знаков после точки):
а) 0.0625; б) 0.345; в) 0.225; г) 0.725; д) 217.375; е) 31.2375; ж) 725.03125; з) 8846.04.
4. Перевести следующие числа в двоичную систему счисления:
а) 1725.3268; б) 341.348; в) 7BF.52A16; г) 3D2.C16.
5. Перевести следующие числа из одной системы счисления в другую:
а) 11011001.010112 "8" с.с.;
б) 1011110.11012 "8" с.с.;
в) 1101111101.01011012 "16" с.с.;
г) 110101000.1001012 "16" с.с.
6. Перевести следующие числа из одной системы счисления в другую:
а) 312.78 "16" с.с.; б) 51.438 "16" с.с.;
в) 5B.F16 "8" с.с.; г) D4.1916 "8" с.с.
7. Заданы двоичные числа X и Y. Вычислить X+Y и X-Y , если:
а) X=1101001; Y=101111;
б) X=101110110; Y=10111001;
в) X=100011001; Y=101011.
8. Заданы двоичные числа X и Y. Вычислить X*Y и X/Y , если:
а) X=1000010011; Y=1011;
б) X=110010101; Y=1001;
в) X=100101.011; Y=110.1;
г) X=100000.1101; Y=101.01.