Впервые позиционная система счисления возникла в древнем Вавилоне. В Индии система работает в виде
позиционной десятичной нумерации с использованием нуля, у индусов данную систему чисел
позаимствовала арабская нация, у них, в свою очередь, взяли европейцы. В Европе эту систему стали
называть арабской.
Позиционная система — значение всех цифр зависит от позиции (разряда) данной цифры в числе.
Примеры, стандартная 10-я система счисления – это позиционная система. Допустим дано число 453.
Цифра 4 обозначает сотни и соответствует числу 400, 5 — кол-во десятков и соответствует значению 50,
а 3 — единицы и значению 3. Легко заметить, что с увеличением разряда увеличивается значение.
Таким образом, заданное число запишем в виде суммы 400+50+3=453.
Двоичная система счисления.
Здесь только 2 цифры – это 0 и 1. Основание двоичной системы - число 2.
Цифра, которая находится с самого края справа, указывает количество единиц, вторая цифра -
количество двоек, далее - количество четверок и так далее.
Во всех разрядах возможна лишь одна цифра — или нуль, или единица.
С помощью двоичной системы счисления возможно закодировать всякое натуральное число, представив
это число в виде последовательности нулей и единиц.
Пример: 10112 = 1*23 + 0*2*2+1*21+1*20 =1*8 + 1*2+1=1110
Двоичную систему счисления, как и десятичную систему счисления, зачастую используют в вычислительной
технике. Текст и числа компьютер хранит в своей памяти в двоичном коде и программным способом преобразует
в изображение на экране.
Сложение, вычитание и умножение двоичных чисел.
Таблица сложения в двоичной системе счисления:
+ | 0 | 1 |
0 | 0 | 1 |
1 | 1 | 10 (перенос в старший разряд) |
Таблица вычитания в двоичной системе счисления:
- | 0 | 1 |
0 | 0 | 1 |
1 | (заём из старшего разряда) 1 | 0 |
Пример сложения «столбиком» (1410 + 510 = 1910 или 11102 + 1012 = 100112):
+ |
| 1 | 1 | 1 | 0 |
|
| 1 | 0 | 1 | |
| 1 | 0 | 0 | 1 | 1 |
Таблица умножения в двоичной системе счисления:
× | 0 | 1 |
0 | 0 | 0 |
1 | 0 | 1 |
Пример умножения «столбиком» (1410 * 510 = 7010 или 11102 * 1012 = 10001102):
* |
|
|
| 1 | 1 | 1 | 0 |
|
|
|
| 1 | 0 | 1 | |
+ |
|
|
| 1 | 1 | 1 | 0 |
|
| 1 | 1 | 1 | 0 |
| |
= | 1 | 0 | 0 | 0 | 1 | 1 | 0 |
Преобразование чисел в двоичной системе счисления.
Для преобразования из двоичной системы в десятичную пользуются следующей таблицей степеней
основания 2:
512 | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Начиная с цифры один каждая цифра умножается на 2. Точка, стоящая после 1, называют двоичной точкой.
Преобразование двоичных чисел в десятичные.
Пусть, есть двоичное число 1100012. Для перевода в десятичное записываем его в виде суммы по
разрядам следующим образом:
1 * 25 + 1 * 24 + 0 * 23 + 0 * 22 + 0 * 21 + 1 * 20 = 49
Немного по другому:
1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49
Также хорошо записывать расчет как таблицу:
512 | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
|
|
|
| 1 | 1 | 0 | 0 | 0 | 1 |
|
|
|
| +32 | +16 | +0 | +0 | +0 | +1 |
Двигаемся справа налево. Под всеми двоичными единицами записываем её эквивалент строчкой ниже.
Далее складываем десятичные числа, которые мы получили. Т.о., двоичное число 1100012 = десятичному 4910.
Преобразование дробных двоичных чисел в десятичные.
Задание: перевести число 1011010, 1012 в десятичную систему.
Записываем заданное число в таком виде:
1*26 +0*25 +1*24 +1*23+0 *22 + 1 * 21 + 0 * 20 + 1 * 2-1 + 0 * 2-2 + 1 * 2-3 = 90,625
Другой вариант записи:
1*64+0*32+1*16+1*8+0*4+1*2+0*1+1*0,5+0*0,25+1*0,125 = 90,625
Либо в виде таблицы:
64 | 32 | 16 | 8 | 4 | 2 | 1 | 0.5 | 0.25 | 0.125 |
1 | 0 | 1 | 1 | 0 | 1 | 0. | .1 | 0 | 1 |
+64 | +0 | +16 | +8 | +0 | +2 | +0 | +0.5 | +0 | +0.125 |
Преобразование десятичных чисел в двоичные.
Пусть, необходимо перевести число 19 в двоичное. Можем сдеать это таким образом:
19 /2 = 9 с остатком 1
9 /2 = 4 c остатком 1
4 /2 = 2 без остатка 0
2 /2 = 1 без остатка 0
1 /2 = 0 с остатком 1
То есть, каждое частное делится на 2 и записывается остаток в конец двоичной записи. Деление
продолжается до того момента, когда в частном не будет нуля. Итог пишем справа налево. Т.е. нижняя
цифра (1) будет крайней левой и так далее. Итак, у нас получилось число 19 в двоичной записи: 10011.
Преобразование дробных десятичных чисел в двоичные.
Когда в заданном числе присутствует целая часть, то ее преобразуют отдельно от дробной. Перевод
дробного числа из десятичной системы счисления в двоичную происходит следующим образом:
Дробь умножается на основание двоичной системы счисления (2);
В полученном произведении выделяется целая часть, которая принимается в качестве старшего
разряда числа в двоичной системе счисления;
Алгоритм завершается, если дробная часть полученного произведения равна нулю или если
достигнута требуемая точность вычислений. В противном случае вычисления продолжаются над
дробной частью произведения.
Пример: Нужно перевести дробное десятичное число 206,116 в дробное двоичное число.
Переведя целую часть, получаем 20610=110011102. Дробная часть 0,116 умножается на основание 2,
заносим целые части произведения в разряды после запятой:
0,116 • 2 = 0,232
0,232 • 2 = 0,464
0,464 • 2 = 0,928
0,928 • 2 = 1,856
0,856 • 2 = 1,712
0,712 • 2 = 1,424
0,424 • 2 = 0,848
0,848 • 2 = 1,696
0,696 • 2 = 1,392
0,392 • 2 = 0,784
и так далее. Т.о. 0,11610 ≈ 0,00011101102
Результат: 206,11610 ≈ 11001110,00011101102
Алгоритм перевода чисел из одной системы счисления в другую.
1. Из десятичной системы счисления:
делим число на основание переводимой системы счисления;
находим остаток от деления целой части числа;
записываем все остатки от деления в обратном порядке;
2. Из двоичной системы счисления:
для перевода в десятичную систему счисления находим сумму произведений основания 2 на
соответствующую степень разряда;
для перевода числа в восьмеричную разбиваем число на триады.
Например, 1000110 = 1 000 110 = 1068
для перевода числа из двоичной системы счисления в шестнадцатеричную разбиваем число на
группы по 4 разряда.
Например, 1000110 = 100 0110 = 4616.