Системы счисления
В предыдущем параграфе мы говорили о числовых множествах.
Теперь рассмотрим способы записи чисел. Числа записываются при помощи цифр.
Слово «цифра» происходит от арабского «цифр» – пустое место. Вплоть до XVIII
века наш нуль назывался «цифрой», а в английском языке до сих пор одно из
значений слова «цифра» (cipher) – нуль.
Система счисления (СС) – это совокупность приемов и правил, по которым числа
записываются и читаются.
Существуют позиционные и непозиционные системы счисления.
В непозиционных системах счисления вес цифры (т. е. тот вклад, который она
вносит в значение числа) не зависит от ее позиции в записи числа. Так, в римской
системе счисления в числе ХХХII (тридцать два) вес цифры Х в любой позиции равен
просто десяти.
В позиционных системах счисления вес каждой цифры изменяется в зависимости от ее
положения (позиции) в последовательности цифр, изображающих число. Например, в
числе 757,7 первая семерка означает 7 сотен, вторая – 7 единиц, а третья – 7
десятых долей единицы.
Сама же запись числа 757,7 означает сокращенную запись выражения
700 + 50 + 7 + 0,7 = 7 · 102 + 5 · 101 + 7 · 100 + 7 · 10-1 = 757,7.
Любая позиционная система счисления характеризуется своим основанием. Основание
позиционной системы счисления – количество различных цифр, используемых для
изображения чисел в данной системе счисления.
За основание системы можно принять любое натуральное число – два, три, четыре и
т.д. Следовательно, возможно бесчисленное множество позиционных систем:
двоичная, троичная, четверичная и т.д. Запись чисел в каждой из систем счисления
с основанием q означает сокращенную запись выражения
an-1 qn-1 + an-2 qn-2 + ... + a1 q1 + a0 q0 + a-1 q-1 + ... + a-m q-m,
где ai – цифры системы счисления; n и m – число целых и дробных разрядов,
соответственно.
Например:
-
Разряды |
3 2 1 0 -1 |
|
Число |
1 0 1 1,12
= |
1·23+0·22+1·21+1·20+1·2-1 |
Разряды |
2 1 0 -1 -2 |
|
Число |
2 7 6, 5 28
= |
2·82+7·81+6·80+5·8-1+2·8-2 |
Кроме десятичной широко используются системы с
основанием, являющимся целой степенью числа 2, а именно:
-двоичная (используются цифры 0, 1);
-восьмеричная (используются цифры 0, 1, ..., 7);
-шестнадцатеричная (для первых целых чисел от нуля до девяти используются цифры
0, 1, ..., 9, а для следующих чисел – от десяти до пятнадцати – в качестве цифр
используются символы A, B, C, D, E, F).
Попробуем разобраться на примере первых двух десятков чисел в этих системах
счисления:
Представление
чисел в различных системах счисления
10-я |
2-я |
8-я |
16-я |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
2 |
10 |
2 |
2 |
3 |
11 |
3 |
3 |
4 |
100 |
4 |
4 |
5 |
101 |
5 |
5 |
6 |
110 |
6 |
6 |
7 |
111 |
7 |
7 |
8 |
1000 |
10 |
8 |
9 |
1001 |
11 |
9 |
10 |
1010 |
12 |
A |
11 |
1011 |
13 |
B |
12 |
1100 |
14 |
C |
13 |
1101 |
15 |
D |
14 |
1110 |
16 |
E |
15 |
1111 |
17 |
F |
16 |
10000 |
20 |
10 |
17 |
10001 |
21 |
11 |
18 |
10010 |
22 |
12 |
19 |
10011 |
23 |
13 |
Из всех систем счисления особенно проста и поэтому интересна для технической
реализации в компьютерах двоичная система счисления.
Компьютеры используют двоичную систему потому, что она имеет ряд преимуществ
перед другими системами:
-для ее реализации нужны технические устройства с двумя устойчивыми состояниями
(есть ток – нет тока, намагничен – не намагничен и т.п.), а не, например, с
десятью, – как в десятичной;
-представление информации посредством только двух состояний надежно и
помехоустойчиво;
-возможно применение аппарата булевой алгебры для выполнения логических
преобразований информации;
-двоичная арифметика намного проще десятичной.
Недостаток двоичной системы – быстрый рост числа разрядов, необходимых для
записи чисел.
Двоичная система, удобная для компьютеров, для человека неудобна из-за ее
громоздкости и непривычной записи.
Перевод чисел из десятичной системы в двоичную и наоборот выполняет машина.
Однако, чтобы профессионально использовать компьютер, следует научиться понимать
слово машины. Для этого и разработаны восьмеричная и шестнадцатеричная системы.
Перевод восьмеричных и шестнадцатеричных чисел в двоичную систему очень прост:
достаточно каждую цифру заменить эквивалентной ей двоичной триадой (тройкой
цифр) или тетрадой (четверкой цифр).
Чтобы перевести число из двоичной
системы в восьмеричную или шестнадцатеричную, его нужно разбить влево и вправо
от запятой на триады (для восьмеричной) или тетрады (для шестнадцатеричной) и
каждую такую группу заменить соответствующей восьмеричной (шестнадцатеричной)
цифрой.
Для перевода целого десятичного числа N в систему счисления с основанием q
необходимо N разделить с остатком («нацело») на q, записанное в той же
десятичной системе. Затем неполное частное, полученное от такого деления, нужно
снова разделить с остатком на q, и т.д., пока последнее полученное неполное
частное не станет равным нулю. Представлением числа N в новой системе счисления
будет последовательность остатков деления, изображенных одной q-ичной цифрой и
записанных в порядке, обратном порядку их получения.
Пример:
Переведем число 75 из десятичной системы в двоичную, восьмеричную и
шестнадцатеричную:
|
|
|
75 |
2 |
|
|
|
|
|
6 |
37 |
2 |
|
|
|
|
15 |
36 |
18 |
2 |
|
|
|
14 |
1 |
18 |
9 |
2 |
|
|
1 |
|
0 |
8 |
4 |
2 |
|
|
|
|
1 |
4 |
2 |
2 |
|
|
|
|
0 |
2 |
1 |
|
|
|
|
|
0 |
|
|
|
Напоминание: первый остаток 1116
в этом примере записывается шестнадцатеричной цифрой
B16. |
Ответ: 7510 =
1 001 0112 = 1138 = 4B16.
Перевод в десятичную систему числа x, записанного в q-ичной cистеме счисления
(q=2,8 или 16) в виде
xq=(anan-1...a0 ,a-1a-2...a-m)q
сводится к вычислению значения многочлена
x10=an qn + an-1 qn-1 + ...+ a0 q0 + a-1 q-1+ a-2 q-2+...+ a-m q-m
средствами десятичной арифметики.
Рассмотрим, к
примеру, тринадцатеричную систему счисления.
Для этого нам нужно оговорить способы записи чисел, цифры, данной системы
счисления. Первые десять чисел позаимствуем у привычной десятичной системы
счисления – {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. Нам нужно еще три цифры.
Договоримся, что если двузначные числа 10, 11 и 12 будут стоять в скобках, то
будем их воспринимать как цифры. Итак, запишем все тринадцать цифр
тринадцатеричной системы счисления:
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, (10), (11), (12)}.
Также мы могли обозначить нововведенные цифры латинскими буквами, как у
шестнадцатеричной системы счисления {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C}.
Суть от этого не меняется.
Вопросы для
самоконтроля:
1. Что называют основанием системы счисления?
2. Какое наименьшее количество цифр может быть в системе счисления?
3. Запишите цифры шестеричной системы счисления.
4. Приведите примеры чисел непозиционной системы счисления.
5. При переводе числа из десятичной системы в q-ичную до каких пор нужно делить
десятичное число на основание q? |