Позиційна система числення.

Традиционная система чисел, которой нас научили в школе и которой мы ежед­невно пользуемся, является позиционной системой счисления (positional number system). В такой системе число представляется строкой цифр, в которой каждому разряду приписан определенный вес (weight). Значение числа равно взвешенной сумме его разрядов, например:

1734 = 1*103+7*102+3*101+4*100

Каждый вес - это степень числа 10, соответствующая положению цифры в стро­ке. Десятичная точка позволяет использовать как положительные, так и отрица­тельные степени числа 10.

 

В технике, наряду с десятичной, большое распространение получила двоичная система счисления. Основание двоичной системы равно двум, следовательно, в ней имеется только две цифры: 0 и 1. Этими двумя цифрами можно записать любое число. Перевод десятичного числа в двоичную систему поясним на примере числа 37:

37 1

18 0

9 1

4 0

2 0

1 1

В левой колонке каждое следующее число меньше предыдущего вдвое. Если число не делится на два, то его необходимо уменьшить на единицу. В правой колонке единицами отмечены нечётные числа, нулями — чётные. Читая снизу вверх цифры правой колонки, получаем искомое двоичное число:

37104 а3 а2 а1 а0.

Для перевода (n + 1)-разрядного двоичного числа в десятичное можно воспользоваться развёрнутой записью числа двоичной системы:

N = anqn+an-1qn-1+an-2qn-2+…+a1q1+a0q0

Переведём в десятичную систему двоичное число 100101. Согласно его записи имеем:

n=5; a0=a2=a5=1; a1=a3=a4=0

Тогда получим:

1001012.=1*25+0*24+0*23+1*22+0*21+1*20=32+4+1=3710.

Над двоичными числами можно выполнять те же операции, что и над десятичными. Главной из них является операция сложения.

Сложение двоичных чисел осуществляется поразрядно, с запоминанием единиц переноса, точно так же, как и в десятичной системе. Поясним это на примере. Пусть a = 101011, b = 101110, найдём их сумму a + b.

Запишем числа a и b одно под другим, совместив

младшие разряды:

 

1 0 1 0 1 1 - число а

+

___1 0 1 1 1 0 - число b

1 0 1 1 0 0 1 - число а+b

(1) (0) (1) (1) (1) (0) - переносы

 

 

Как и в десятичной системе, суммирование начинаем

с младшего разряда:

а) 1 + 0 = 1, переноса нет, под цифрой 1 (младший разряд числа a + b) записываем в скобках нуль;

б) во втором разряде суммируются единицы: 1 + 1 = 10, т. е. сумма равна нулю и есть единица переноса. Записываем её под результирующим нулём второго

разряда суммы;

в) в третьем разряде 0 + 1 = 1, но ещё надо прибавить единицу переноса из второго разряда, тогда 0 + 1 + 1 = 10. Снова сумма равна нулю и есть единица

переноса;

г) в четвёртом разряде суммируются две единицы и к ним прибавляется единица переноса из третьего разряда:

1 + 1 + 1 = 11. В результате сумма равна 1 и есть единица переноса;

д) в пятом разряде 0 + 0 + 1 = 1, т. е. сумма равна единице, переноса нет;

е) в шестом разряде 1 + 1 = 10. Сумма равна нулю, а единица переноса образует седьмой разряд суммы a + b. Это эквивалентно записи 0+0+1=1, если числа a и b

записать в виде a = 0101011, b = 0101110, т. е. удлинить

их путём приписывания слева нулей.

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