1.1. Позиционные системы счисления
Совокупность правил записи чисел называется системой счисления. Наиболее часто используются позиционные системы, в которых целое положительное число записывается в виде последовательности символов , а вес каждого символа равен qр, где q — основание системы счисления, ep – 0,1,..., q-1. Тогда любое целое положительное число Е в системе счисления с основанием q можно записать в виде:
При вычислении суммы полагаем, что все значения ер и qp представлены в привычной десятичной системе счисления. Максимальное n-разрядное число получается при ер = q — 1 для всех р = 0,1,..., n—1:
Напомним, что в десятичной системе счисления (в десятичном коде) основанием системы является число q=10, используемых цифр — десять: 0, 1, 2, ..., 9, а цены («веса») единиц в соседних разрядах отличаются в 10 раз. В этой системе любое число представляется последовательностью коэффициентов в разложении этого числа по степеням числа 10. Так, например, число 3810 (индекс 10 указывает на запись числа в десятичной системе счисления) выражается суммой: 3810=3101+8100, где основание системы 10 возводится в нулевую степень (в первом, младшем разряде), в первую степень (во втором разряде), а коэффициентами ряда являются цифры 3 и 8, последовательное написание которых представляет рассматриваемое число.
В двоичной системе счисления основанием системы является число 2, используемых цифр — две: 0 и 1, а веса единиц в соседних разрядах отличаются вдвое. Число в двоичной системе счисления представляется последовательностью коэффициентов в разложении этого числа по степеням числа 2. Так, число 3810 выражается следующим рядом по степеням 2:
3810=125+024+023+122+121+020=1001102,
где индекс 2 указывает, что данная совокупность знаков выражает число в двоичной системе счисления (является двоичным кодом числа).
Как следует из последнего примера, двоичный код формируется так же, как десятичный; его знаки — коэффициенты в разложении числа по степеням основания (в данном случае по степеням 2).
Заметим, что рассмотренный двоичный код (у которого веса единиц в соседних разрядах отличаются вдвое) называется натуральным двоичным кодом. В таком коде было записано приведенное ранее число.
Преимуществом двоичной системы счисления является то, что она использует только две цифры. Поэтому в аппаратуре для выполнения операций над числами в двоичной системе счисления (над двоичными числами) достаточно пользоваться двумя значениями, к примеру, напряжения. Восприятие же человеком информации, представленной в двоичной системе счисления, сильно затруднено как из-за ее монотонности, так и из-за большого числа разрядов, необходимых для ее представления.
В общем случае существует qn различных n-разрядных чисел (с учетом нуля).
Системы счисления с основаниями q = 2k при k = 2,3,4,... жестко связаны с двоичной системой счисления (k = 1). Для перевода чисел из этих систем в двоичную запись достаточно цифры ер = 0,1,2,...,2k - 1 всех разрядов числа представить k-разрядным двоичным кодом. Не более сложно и взаимное преобразование чисел из одной системы счисления в другую. Для общения человека с ЭВМ наиболее удобна система счисления с основанием q = 16 (k = 4).
В табл. 1 показан перевод 15 чисел из одной системы счисления в другую для наиболее часто используемых оснований q = 10,2, 16.
Таблица 1. | |||||
q | |||||
10 |
2 |
16 |
10 |
2 |
16 |
00 |
0000 |
0 |
08 |
1000 |
8 |
01 |
0001 |
1 |
09 |
1001 |
9 |
02 |
0010 |
2 |
10 |
1010 |
А |
03 |
0011 |
3 |
11 |
1011 |
В |
04 |
0100 |
4 |
12 |
1100 |
С |
05 |
0101 |
5 |
13 |
1101 |
D |
06 |
о11о |
6 |
14 |
1110 |
Е |
07 |
0111 |
7 |
15 |
1111 |
F |
Для кодирования информации в электронных схемах широкое применение находит унитарный код, содержащий символ 1 только в одной позиции n-разрядного кода (в остальных позициях проставляются символы 0), т. е. для представления информации используется специальное двоичное ее кодирование. Так, например, числа от 0 до 7 можно записать с помощью унитарного кода:
010 = 00000001; 410 = 00010000;
110 = 00000010; 510 = 00100000;
210 = 00000100; 610 = 01000000;
310 = 00001000; 710 = 10000000.
Унитарный код чаще всего применяется для кодирования нечисловой информации. В частности, на выходах полных дешифраторов всегда реализуется унитарный код.