«Системы
счисления: двоичная, восьмеричная, десятичная, шестнадцатеричная».
Автор:
Гребенников Александр Николаевич
Должность: учитель информатики
Учебное
заведение: ГБОУ
школа – интернат № 67
Населённый пункт: Пушкинский район
Санкт–Петербурга
Наименование материала: статья
Тема: «Системы счисления: двоичная,
восьмеричная, десятичная, шестнадцатеричная».
Системы счисления: двоичная,
восьмеричная, десятичная, шестнадцатеричная.
Система счисления – это способ записи чисел. Обычно,
числа записываются с помощью специальных знаков – цифр (хотя и не всегда). Если
вы никогда не изучали данный вопрос, то, по крайней мере, вам должны быть
известны две системы счисления – это арабская и римская. Следует отметить,
важную роль нуля. «Открытие» этой цифры в истории человечества сыграло большую
роль в формировании позиционных систем счисления.
Каждая позиционная система использует определенный алфавит цифр
и основание. В позиционных системах счисления основание системы равно количеству
цифр (знаков в ее алфавите) и определяет, во сколько раз различаются значения
цифр соседних разрядов числа.
В первой используются цифры 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (10 цифр) - это позиционная система счисления. А
во второй – I, V, X, L, C, D, M (1, 5, 10, 50, 100, 500, 1000) - это непозиционная система счисления.
В позиционных системах счисления количество, обозначаемое цифрой
в числе, зависит от ее позиции, а в непозиционных – нет.
Например:
11 –
здесь первая единица обозначает 10, а вторая – 1.
I I – здесь обе единицы обозначают единицу.
Основание системы счисления – это количество знаков, которое
используется для записи цифр.
Разряд - это позиция цифры в числе. Разрядность числа -
количество цифр, из которых состоит число (например, 362 - трехразрядное число,
1001101 - восьмиразрядное число). Разряды нумеруются справа на лево (например,
в числе 793 семёрка занимает первый разряд, а тройка - третий).
Итак, в позиционной системе счисления числа записываются таким
образом, что каждый следующий (движение справа на лево) разряд больше другого
на степень основания системы счисления.
456, 567, 678 – здесь цифра 6 в первом случае обозначает
6, во втором
– 60, а в
третьем – 600.
XXV, XVI, XII – здесь, где бы ни стояла
цифра X, она везде обозначает десять единиц.
Другими словами, величина, обозначаемая знаком X,
не зависит от его позиции.
В мире наиболее распространены позиционные системы счисления.
Помимо знакомой всем с детства десятичной (где используется 10 цифр от 0 до 9), в технике широкое распространение
нашли такие системы счисление как двоичная (используются цифры 0 и 1), восьмеричная (используются 8 цифр от 0 до 7), шестнадцатеричная (используются 16 цифр
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F).
Сложение, умножение и другие математические операции в
позиционных системах счисления выполнить легче, чем в непозиционных, т.к. математические
операции осуществляются по несложным алгоритмам (например, умножение в столбик,
сравнение двух чисел).
Одно и тоже число (значение) можно представить в различных
системах счисления. Представление числа при этом различно, а значение остается
неизменным.
Системы счисления
|
Десятичная
|
Двоичная
|
Восьмеричная
|
Шестнадцатеричная
|
0
|
0000
|
0
|
0
|
1
|
0001
|
1
|
1
|
2
|
0010
|
2
|
2
|
3
|
0011
|
3
|
3
|
4
|
0100
|
4
|
4
|
5
|
0101
|
5
|
5
|
6
|
0110
|
6
|
6
|
7
|
0111
|
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
|
Двоичная система счисления.
Почему двоичная система счисления так распространена?
Двоичной системой счисления люди начали пользоваться очень
давно. Древние племена Австралии и островов Полинезии использовали эту систему
в быту. Так, полинезийцы передавали необходимую информацию, выполняя два
вида ударов по барабану: звонкий и глухой. Это было примитивное представление
двоичной системы счисления.
Дело в том, что двоичная система счисления – это язык
вычислительной техники. Каждая цифра должна быть как-то представлена на
физическом носителе. Если это десятичная система, то придется создать такое
устройство, которое может быть в десяти состояниях. Это сложно. Проще
изготовить физический элемент, который может быть лишь в двух состояниях
(например, есть ток или нет тока). Это одна из основных причин, почему двоичной
системе счисления уделяется столько внимания. Поэтому для кодирования информации в компьютере вместо привычной
десятичной системы счисления используется двоичная система счисления.
В двоичной системе счисления используются всего две цифры 0 и 1.
Другими словами, двойка является основанием двоичной системы счисления.
(Аналогично у десятичной системы основание 10.)
Чтобы научиться понимать числа в двоичной системе счисления,
сначала рассмотрим, как формируются числа в привычной для нас десятичной
системе счисления.
В десятичной системе счисления мы располагаем десятью
знаками-цифрами (от 0 до 9). Когда счет достигает 9, то вводится новый разряд
(десятки), а единицы обнуляются и счет начинается снова. После 19 разряд
десятков увеличивается на 1, а единицы снова обнуляются. И так далее. Когда
десятки доходят до 9, то потом появляется третий разряд – сотни.
Двоичная система счисления аналогична десятичной за исключением
того, что в формировании числа участвуют всего лишь две знака-цифры: 0 и 1. Как
только разряд достигает своего предела (т.е. единицы), появляется новый разряд,
а старый обнуляется.
Для обозначения
системы счисления, в которой представляется число, используют нижний
индекс, указывающий основание системы. Например, 11011 2 —
число в двоичной системе счисления.
Цифры в двоичном
числе являются коэффициентами его представления в виде суммы степеней с
основанием 2, например:
2 1 0
101 2 =1⋅2 2 +0⋅2 1 +1⋅2 0 .
В десятичной
системе счисления это число будет выглядеть так:
2 1 0
110 2 =4+0+1=5 .
Для перевода
целого десятичного числа в двоичную систему счисления нужно последовательно
выполнять деление данного числа и получаемых целых частных на 2
до тех пор, пока не получим частное, равное нулю. Исходное число в двоичной
системе счисления составляется последовательной записью полученных остатков,
начиная с последнего.
Пример:
Переведём десятичное
число 15 в двоичную систему счисления.
Рассмотренную выше последовательность действий (алгоритм перевода) можно
изобразить так:
15
|
2
|
|
|
-14
|
7
|
2
|
|
1
|
-6
|
3
|
2
|
|
1
|
-2
|
1
|
|
|
1
|
|
Получили 15 10 =1111 2.
Попробуем считать в двоичной системе:
0 – это ноль
1 – это один (и это предел разряда)
10 – это два
11 – это три (и это снова предел)
100 – это четыре
101 – пять
110 – шесть
111 – семь и т.д.
Перевод чисел из двоичной системы счисления в десятичную.
Не трудно заметить, что в двоичной системе счисления длины чисел
с увеличением значения растут быстрыми темпами. Как определить, что значит вот
это: 10001001? Непривычный к такой форме записи чисел человеческий мозг обычно
не может понять сколько это. Неплохо бы уметь переводить двоичные числа в
десятичные.
В десятичной системе счисления любое число можно представить в
форме суммы единиц, десяток, сотен и т.д. Например:
1567 = 1000 + 500 + 60 + 7
Можно пойти еще дальше и разложить так:
3 2 1 0
1567 10=
1 * 103 + 5 * 102 + 6 * 101 + 7 * 100
Посмотрите на эту запись внимательно. Здесь цифры 1, 5, 6 и 7 -
это набор цифр из которых состоит число 1567. Все эти цифры поочередно умножаются
на десять возведенную в ту или иную степень. Десять – это основание десятичной
системы счисления. Степень, в которую возводится десятка – это разряд цифры за
минусом единицы.
Аналогично можно разложить и любое двоичное число. Только
основание здесь будет 2:
6 5 4 3 2 1 0
10001012
= 1*26 + 0*25 + 0*24 + 0*23 + 1*22 + 0*21 + 1*20
Если посчитать сумму составляющих, то в итоге мы получим
десятичное число, соответствующее 10001001:
1*26 + 0*25 + 0*24 +
0*23 + 1*22 + 0*21 + 1*20 =
64 + 0 + 0 + 0 + 4 + 0 + 1 = 6910
Т.е. число 10001001 по основанию 2 равно числу 69 по основанию
10. Записать это можно так:
10001012 = 6910
Восьмеричная система счисления
Итак,
современное «железо понимает» лишь двоичную систему счисления. Однако человеку
трудно воспринимать длинные записи нулей и единиц с одной стороны, а с другой –
переводит числа из двоичной в десятичную систему и обратно, достаточно долго и
трудоемко. В результате, часто программисты используют другие системы
счисления: восьмеричную и шестнадцатеричную. И 8 и 16 являются степенями
двойки, и преобразовывать двоичное число в них (так же как и выполнять обратную
операцию) очень легко.
В
восьмеричной системе счисления используется восемь знаков-цифр (от 0 до 7).
Каждой цифре соответствуют набор из трех цифр в двоичной системе счисления:
000
– 0
001 – 1
010 – 2
011 – 3
100 – 4
101 – 5
110 – 6
111 – 7
Для
преобразования двоичного числа в восьмеричное достаточно разбить его на тройки
(триады) и заменить их соответствующими им цифрами из
восьмеричной системы счисления. Разбивать на тройки нужно начинать с конца, а
недостающие цифры в начале заменить нулями. Например:
222120
4 2 1 4 2 1 4 2 1 4 2 1 (Складываем цифры над единицами)
11101012 = 1 011 101 = 001 110 101 = 1
6
5 = 1658
Т.е
число 1011101 в двоичной системе счисления равно числу 165 в восьмеричной
системе счисления. Или 11101012 = 1658.
Обратный
перевод. Допустим, требуется перевести число 1038 (не заблуждайтесь!
100 в восьмеричной системе – это не 103 в десятичной) в двоичную систему
счисления.
222120
4 2 1 4 2 1
4 2 1 4 2 1 (1=421, 0=421, 3=42+1 зелёные – 0, красные – 1)
1038 =
1 0 3 = 001 000 011 = 001000011 = 10000112
Перевод
восьмеричного числа в десятичное можно осуществить по уже знакомой схеме:
2 1 0
6728
= 6 * 82 + 7 *
81 + 2 *
80 = 6 *
64 + 56 + 2 = 384 + 56 + 2 = 44210
2 1 0
1008
= 1 * 82 + 0 *
81 + 0 *
80 = 6410
Шестнадцатеричная система счисления
Шестнадцатеричная
система счисления, так же как и восьмеричная, широко используется в
компьютерной науке из-за легкости перевода в нее двоичных чисел. При
шестнадцатеричной записи числа получаются более компактными.
В
шестнадцатеричной системе счисления используются цифры от 0 до 9 и шесть первых
латинских букв – A (10), B (11), C (12), D (13), E (14), F (15).
При
переводе двоичного числа в шестнадцатеричное, первое разбивается на группы по
четыре разряда (тетрады), начиная с конца. В случае, если
количество разрядов не делится нацело, то первая четверка дописывается нулями
впереди. Каждой четверке соответствует цифра шестнадцатеричной системе
счисления:
Например:
23222120
8 4 2 1 8 4 2 1 8 4 2 1 8 4 2 1
(Складываем цифры над единицами)
_11011010101 = 0110 1101 0101 = 6 13 5 = 6D5
Если
потребуется, то число 6D5 можно перевести в десятичную систему счисления
следующим образом (D следует заменить на соответствующее данному символу
число в десятичной системе счисления – это 13):
2 1 0
6D516
= 6 * 162 + 13 * 161 + 5 * 160 = 6
* 256 + 208 + 5 = 174910
Максимальное
двухразрядное число, которое можно получить с помощью шестнадцатеричной записи
- это FF.
1 0
FF16
= 15 * 161 + 15 * 160 = 240 + 15 = 255
255
– это максимальное значение одного байта, равного 8 битам: 1111 1111 = FF.
Поэтому с помощью шестнадцатеричной системы счисления очень удобно кратко (с
помощью двух цифр-знаков) записывать значения байтов. Внимание! Состояний у
8-ми битного байта может быть 256, однако максимальное значение – 255. Не
забывайте про 0 – это как раз 256-е состояние
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.