Как перевести в разные системы счисления. Правила перевода чисел из одной системы счисления в другую
Результат уже получен!
Системы счисления
Существуют позиционные и не позиционные системы счисления. Арабская система счисления, которым мы пользуемся в повседневной жизни, является позиционной, а римская − нет. В позиционных системах счисления позиция числа однозначно определяет величину числа. Рассмотрим это на примере числа 6372 в десятичном системе счисления. Пронумеруем это число справа налево начиная с нуля:
Тогда число 6372 можно представить в следующем виде:
6372=6000+300+70+2 =6·10 3 +3·10 2 +7·10 1 +2·10 0 .
Число 10 определяет систему счисления (в данном случае это 10). В качестве степеней взяты значения позиции данного числа.
Рассмотрим вещественное десятичное число 1287.923. Пронумеруем его начиная с нуля позиции числа от десятичной точки влево и вправо:
Тогда число 1287.923 можно представить в виде:
1287.923 =1000+200+80 +7+0.9+0.02+0.003 = 1·10 3 +2·10 2 +8·10 1 +7·10 0 +9·10 -1 +2·10 -2 +3·10 -3 .
В общем случае формулу можно представить в следующем виде:
Ц n ·s n +Ц n-1 ·s n-1 +...+Ц 1 ·s 1 +Ц 0 ·s 0 +Д -1 ·s -1 +Д -2 ·s -2 +...+Д -k ·s -k
где Ц n -целое число в позиции n , Д -k - дробное число в позиции (-k), s - система счисления.
Несколько слов о системах счисления.Число в десятичной системе счисления состоит из множества цифр {0,1,2,3,4,5,6,7,8,9}, в восьмеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7}, в двоичной системе счисления - из множества цифр {0,1}, в шестнадцатеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}, где A,B,C,D,E,F соответствуют числам 10,11,12,13,14,15.В таблице Таб.1 представлены числа в разных системах счисления.
Таблица 1 | |||
---|---|---|---|
Система счисления | |||
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 |
Перевод чисел из одной системы счисления в другую
Для перевода чисел с одной системы счисления в другую, проще всего сначала перевести число в десятичную систему счисления, а затем, из десятичной системы счисления перевести в требуемую систему счисления.
Перевод чисел из любой системы счисления в десятичную систему счисления
С помощью формулы (1) можно перевести числа из любой системы счисления в десятичную систему счисления.
Пример 1. Переводить число 1011101.001 из двоичной системы счисления (СС) в десятичную СС. Решение:
1 ·2 6 +0 ·2 5 +1 ·2 4 +1 ·2 3 +1 ·2 2 +0 ·2 1 +1 ·2 0 +0 ·2 -1 +0 ·2 -2 +1 ·2 -3 =64+16+8+4+1+1/8=93.125
Пример 2. Переводить число 1011101.001 из восьмеричной системы счисления (СС) в десятичную СС. Решение:
Пример 3 . Переводить число AB572.CDF из шестнадцатеричной системы счисления в десятичную СС. Решение:
Здесь A -заменен на 10, B - на 11, C - на 12, F - на 15.
Перевод чисел из десятичной системы счисления в другую систему счисления
Для перевода чисел из десятичной системы счисления в другую систему счисления нужно переводить отдельно целую часть числа и дробную часть числа.
Целую часть числа переводится из десятичной СС в другую систему счисления - последовательным делением целой части числа на основание системы счисления (для двоичной СС - на 2, для 8-ичной СС - на 8, для 16-ичной - на 16 и т.д.) до получения целого остатка, меньше, чем основание СС.
Пример 4 . Переведем число 159 из десятичной СС в двоичную СС:
159 | 2 | ||||||
158 | 79 | 2 | |||||
1 | 78 | 39 | 2 | ||||
1 | 38 | 19 | 2 | ||||
1 | 18 | 9 | 2 | ||||
1 | 8 | 4 | 2 | ||||
1 | 4 | 2 | 2 | ||||
0 | 2 | 1 | |||||
0 |
Как видно из Рис. 1, число 159 при делении на 2 дает частное 79 и остаток 1. Далее число 79 при делении на 2 дает частное 39 и остаток 1 и т.д. В результате построив число из остатков деления (справа налево) получим число в двоичной СС: 10011111 . Следовательно можно записать:
159 10 =10011111 2 .
Пример 5 . Переведем число 615 из десятичной СС в восьмеричную СС.
615 | 8 | ||
608 | 76 | 8 | |
7 | 72 | 9 | 8 |
4 | 8 | 1 | |
1 |
При приведении числа из десятичной СС в восьмеричную СС, нужно последовательно делить число на 8, пока не получится целый остаток меньшее, чем 8. В результате построив число из остатков деления (справа налево) получим число в восьмеричной СС: 1147 (см. Рис. 2). Следовательно можно записать:
615 10 =1147 8 .
Пример 6 . Переведем число 19673 из десятичной системы счисления в шестнадцатеричную СС.
19673 | 16 | ||
19664 | 1229 | 16 | |
9 | 1216 | 76 | 16 |
13 | 64 | 4 | |
12 |
Как видно из рисунка Рис.3, последовательным делением числа 19673 на 16 получили остатки 4, 12, 13, 9. В шестнадцатеричной системе счисления числе 12 соответствует С, числе 13 - D. Следовательно наше шестнадцатеричное число - это 4CD9.
Для перевода правильных десятичных дробей (вещественное число с нулевой целой частью) в систему счисления с основанием s необходимо данное число последовательно умножить на s до тех пор, пока в дробной части не получится чистый нуль, или же не получим требуемое количество разрядов. Если при умножении получится число с целой частью, отличное от нуля, то эту целую часть не учитывать (они последовательно зачисливаются в результат).
Рассмотрим вышеизложенное на примерах.
Пример 7 . Переведем число 0.214 из десятичной системы счисления в двоичную СС.
0.214 | ||
x | 2 | |
0 | 0.428 | |
x | 2 | |
0 | 0.856 | |
x | 2 | |
1 | 0.712 | |
x | 2 | |
1 | 0.424 | |
x | 2 | |
0 | 0.848 | |
x | 2 | |
1 | 0.696 | |
x | 2 | |
1 | 0.392 |
Как видно из Рис.4, число 0.214 последовательно умножается на 2. Если в результате умножения получится число с целой частью, отличное от нуля, то целая часть записывается отдельно (слева от числа), а число записывается с нулевой целой частью. Если же при умножении получиться число с нулевой целой частью, то слева от нее записывается нуль. Процесс умножения продолжается до тех пор, пока в дробной части не получится чистый нуль или же не получим требуемое количество разрядов. Записывая жирные числа (Рис.4) сверху вниз получим требуемое число в двоичной системе счисления: 0.0011011 .
Следовательно можно записать:
0.214 10 =0.0011011 2 .
Пример 8 . Переведем число 0.125 из десятичной системы счисления в двоичную СС.
0.125 | ||
x | 2 | |
0 | 0.25 | |
x | 2 | |
0 | 0.5 | |
x | 2 | |
1 | 0.0 |
Для приведения числа 0.125 из десятичной СС в двоичную, данное число последовательно умножается на 2. В третьем этапе получилось 0. Следовательно, получился следующий результат:
0.125 10 =0.001 2 .
Пример 9 . Переведем число 0.214 из десятичной системы счисления в шестнадцатеричную СС.
0.214 | ||
x | 16 | |
3 | 0.424 | |
x | 16 | |
6 | 0.784 | |
x | 16 | |
12 | 0.544 | |
x | 16 | |
8 | 0.704 | |
x | 16 | |
11 | 0.264 | |
x | 16 | |
4 | 0.224 |
Следуя примерам 4 и 5 получаем числа 3, 6, 12, 8, 11, 4. Но в шестнадцатеричной СС числам 12 и 11 соответствуют числа C и B. Следовательно имеем:
0.214 10 =0.36C8B4 16 .
Пример 10 . Переведем число 0.512 из десятичной системы счисления в восьмеричную СС.
0.512 | ||
x | 8 | |
4 | 0.096 | |
x | 8 | |
0 | 0.768 | |
x | 8 | |
6 | 0.144 | |
x | 8 | |
1 | 0.152 | |
x | 8 | |
1 | 0.216 | |
x | 8 | |
1 | 0.728 |
Получили:
0.512 10 =0.406111 8 .
Пример 11 . Переведем число 159.125 из десятичной системы счисления в двоичную СС. Для этого переведем отдельно целую часть числа (Пример 4) и дробную часть числа (Пример 8). Далее объединяя эти результаты получим:
159.125 10 =10011111.001 2 .
Пример 12 . Переведем число 19673.214 из десятичной системы счисления в шестнадцатеричную СС. Для этого переведем отдельно целую часть числа (Пример 6) и дробную часть числа (Пример 9). Далее объединяя эти результаты получим.
Когда занимаешься настройками сетей различного масштаба и каждый день сталкиваешься с вычислениями – то такого рода шпаргалки заводить не обязательно, все и так делается на безусловном рефлексе. Но когда в сетях ковыряешься очень редко, то не всегда вспомнишь какая там маска в десятичной форме для префикса 21 или же какой адрес сети при этом же префиксе. В связи с этим я и решил написать несколько маленьких статей-шпаргалок по переводом чисел в различные системы счислений, сетевым адресам, маскам и т.п. В это части пойдет речь о переводи чисел в различные системы счислений.
1. Системы счислений
Когда вы занимаетесь чем-то связанным с компьютерными сетями и ИТ, вы по любому столкнетесь с этим понятием. И как толковый ИТ-шник вам нужно разбираться в этом хотя бы чу-чуть даже если на практике вы это будете применять очень редко.
Рассмотрим перевод каждой цифры из IP-адреса 98.251.16.138
в следующие системы счислений:
- Двоичная
- Восьмеричная
- Десятичная
- Шестнадцатеричная
1.1 Десятичная
Так как цифры записаны в десятичной, перевод с десятичной в десятичную пропустим 🙂
1.1.1 Десятичная → Двоичная
Как мы знаем двоичная система счисления используется практически во всех современных компьютерах и многих других вычислительных устройствах. Система очень проста – у нас есть только 0 и 1.
Для преобразования числа с десятиной в двоичную форму нужно использовать деление по модулю 2 (т.е. целочисленное деление на 2) в результате чего мы всегда будем иметь в остатке либо 1, либо 0. При этом результат записываем справа налево. Пример все поставит на свои места:
Рисунок 1.1 – Перевод чисел из десятичной в двоичную систему
Рисунок 1.2 – Перевод чисел из десятичной в двоичную систему
Опишу деление числа 98. Мы делим 98 на 2, в результате имеем 49 и остаток 0. Далее продолжаем деление и делим 49 на 2, в результате имеем 24 с остатком 1. И таким же образом добираемся до 1-ки или 0-ка в делимом. Затем результат записываем справа налево.
1.1.2 Десятичная → Восьмеричная
Восьмеричная система – это целочисленная система счисления с основанием 8. Т.е. все числа в ней представлены диапазоном 0 – 7 и для перевода с десятичной системы нужно использовать деление по модулю 8.
Рисунок 1.3 – Перевод чисел из десятичной в восьмеричную систему
Деление аналогично 2-чной системе.
1.1.3 Десятичная → Шестнадцатеричная
Шестнадцатеричная система почти полностью вытеснила восьмеричную систему. У нее основание 16, но используются десятичные цифры от 0 до 9 + латинские буквы от A(число 10) до F(число 15). С ней вы сталкиваетесь каждый раз, когда проверяете настройки сетевого адаптера — это МАС-адрес. Так же, когда используется IPv6.
Рисунок 1.4 – Перевод чисел из десятичной в шестнадцатеричную систему
1.2 Двоичная
В предыдущем примере мы перевели все десятичные числа в другие системы счислений, одна из которых двоичная. Теперь переведем каждое число с двоичной формы.
1.2.1 Двоичная → Десятичная
Для перевода чисел с двоичной формы в десятичную нужно знать два нюанса. Первый – у каждого нолика и единички есть множитель 2 в n-й степени, при котором n увеличивается справа налево ровно на единичку. Второй – после перемножения все числа нужно сложить и мы получим число в десятичной форме. В итого у нас будет формула такого вида:
D = (a n × p n-1) + (a n-1 × p n-2) + (a n-2 × p n-3) +…, (1.2.1)
Где,
D – это число в десятичной форме, которое мы ищем;
n
– количество символов в двоичном числе;
a – число в двоичной форме на n-й позиции (т.е. первый символ, второй, и т.п.);
p – коэффициент, равный 2,8 или 16 в степени n
(в зависимости от системы счисления)
К примеру возьмем число 110102. Смотрим на формулу и записываем:
- Число состоит из 5 символов (n =5)
- p = 2 (так как переводим из двоичной в десятичную)
a 5 = 1, a 4 = 1, a 3 = 0, a 2 = 1, a 1 = 0
В итоге имеем:
D = (1 × 2 5-1) + (1 × 2 5-2) + (0 × 2 5-3) + (1 × 2 5-4) + (0 × 2 5-5) = 16 + 8 + 0 + 2 + 0 = 26 10
Кто привык записывать справа на лево, форму будет выглядеть так:
D = (0 × 2 5-5) + (1 × 2 5-4) + (0 × 2 5-3) + (1 × 2 5-2) + (1 × 2 5-1) = 0 + 2 + 0 + 8 + 16 = 26 10
Но, как мы знаем, от перестановки слагаемых сумма не меняется. Давайте теперь переведем наши числа в десятичную форму.
Рисунок 1.5 – Перевод чисел из двоичной в десятичную систему
1.2.2 Двоичная → Восьмеричная
При переводе нам нужно двоичное число разбить на группы по три символа справа налево. Если последняя группа не состоит из трех символов, то мы просто возмещаем недостающие биты ноликами. К примеру:
10101001 = 0 10 101 001
1011100 = 00 1 011 100
Каждая группа битов – это одно из восьмеричных чисел. Чтобы узнать какое, нужно использовать написанную выше формулу 1.2.1 для каждой группы битов. В результате мы получим.
Рисунок 1.6 – Перевод чисел из двоичной в восьмеричную систему
1.2.3 Двоичная → Шестнадцатеричная
Здесь нам нужно двоичное число разбивать на группы по четыре символа справа налево с последующим дополнением недостающих битов группы ноликами, как писалось выше. Если последняя группа состоит из ноликов, то их нужно игнорировать.
110101011 = 000 1 1010 1011
1011100 = 0 101 1100
001010000 = 00 0101 0000 = 0101 0000
Каждая группа битов – это одно из шестнадцатеричных чисел. Используем формулу 1.2.1 для каждой группы битов.
Рисунок 1.7 – Перевод чисел из двоичной в шестнадцатеричную систему
1.3 Восьмеричная
В этой системе у нас могут возникнуть сложности только при переводе в 16-ричную систему, так как остальной перевод проходит гладко.
1.3.1 Восьмеричная → Двоичная
Каждое число в восьмеричной системе – это группа из трех битов в двоичной системе, как писалось выше. Для перевода нам нужно воспользоваться табличкой-шпаргалкой:
Рисунок 1.8 – Шпора по переводу чисел из восьмеричной системы
Используя эту табличку переведем наши числа в двоичную систему.
Рисунок 1.9 – Перевод чисел из восьмеричной в двоичную систему
Немного опишу вывод. Первое число у нас 142, значит будет три группы по три бита в каждой. Юзаем шпору и видим, что цифра 1 это 001, цифра 4 это 100 и цифра 2 это 010. В результате имеем число 001100010.
1.3.2 Восьмеричная → Десятичная
Здесь мы используем формулу 1.2.1 только с коэффициентом 8 (т.е. p=8). В результате имеем
Рисунок 1.10 – Перевод чисел из восьмеричной в десятеричную систему
- Число состоит из 3 символов (n =3)
- p = 8 (так как переводим из восьмеричной в десятичную)
a 3 = 1, a 2 = 4, a 1 = 2
В результате имеем:
D = (1 × 8 3-1) + (4 × 8 3-2) + (2 × 8 3-3) = 64 + 32 + 2 = 98 10
1.3.3 Восьмеричная → Шестнадцатеричная
Как писалось раньше, для перевода нам нужно сначала перевести числа в двоичную систему, потом с двоичной в шестнадцатеричную, поделив на группы по 4-ре бита. Можно использовать следующею шпору.
Рисунок 1.11 – Шпора по переводу чисел из шестнадцатеричной системы
Эта табличка поможет перевести из двоичной в шестнадцатеричную систему. Теперь переведем наши числа.
Рисунок 1.12 – Перевод чисел из восьмеричной в шестнадцатеричную систему
1.4 Шестнадцатеричная
В этой системе та же проблема, при переводе в восьмеричную. Но об этом позже.
1.4.1 Шестнадцатеричная → Двоичная
Каждое число в шестнадцатеричной системе – это группа из четырех битов в двоичной системе, как писалось выше. Для перевода нам можно воспользоваться табличкой-шпаргалкой, которая находиться выше. В результате:
Рисунок 1.13 – Перевод чисел из шестнадцатеричной в двоичную систему
Возьмем первое число – 62. Используя табличку (рис. 1.11) мы видим, что 6 это 0110, 2 это 0010, в результате имеем число 01100010.
1.4.2 Шестнадцатеричная → Десятичная
Здесь мы используем формулу 1.2.1 только с коэффициентом 16 (т.е. p=16). В результате имеем
Рисунок 1.14 – Перевод чисел из шестнадцатеричной в десятеричную систему
Возьмем первое число. Исходя из формулы 1.2.1:
- Число состоит из 2 символов (n =2)
- p = 16 (так как переводим из шестнадцатеричной в десятичную)
a 2 = 6, a 1 = 2
В результате имеем.
D = (6 × 16 2-1) + (2 × 16 2-2) = 96 + 2 = 98 10
1.4.3 Шестнадцатеричная → Восьмеричная
Для перевода в восьмеричную систему нужно сначала перевести в двоичную, затем разбить на группы по 3-и бита и воспользоваться табличкой (рис. 1.8). В результате:
Рисунок 1.15 – Перевод чисел из шестнадцатеричной в восьмеричную систему
В пойдет речь о IP-адресах, масках и сетях.
Инструкция
Видео по теме
В той системе счета, которой мы пользуемся каждый день, десять цифр - от нуля до девяти. Поэтому она называется десятичной. Однако в технических расчетах, особенно тех, которые имеют отношение к компьютерам, используются и другие системы , в частности, двоичная и шестнадцатеричная. Поэтому нужно уметь переводить числа из одной системы счисления в другую.
Вам понадобится
- - листок бумаги;
- - карандаш или ручка;
- - калькулятор.
Инструкция
Двоичная система - самая простая. В ней всего две цифры - ноль и единица. Каждая цифра двоичного числа , начиная с конца, соответствует степени двойки. Два в равняется одному, в первой - двум, во второй - четырем, в третьей - восьми, и так далее.
Предположим, что вам дано двоичное число 1010110. Единицы в нем стоят на втором, третьем, пятом и седьмом с конца местах. Поэтому в десятичной системе это число равно 2^1 + 2^2 + 2^4 + 2^6 = 2 + 4 + 16 + 64 = 86.
Обратная задача - десятичного числа
систему. Предположим, у вас есть число 57. Чтобы получить его запись, вы должны последовательно делить это число на 2 и записывать остаток от деления. Двоичное число будет строиться от конца к началу.
Первый шаг даст вам последнюю цифру: 57/2 = 28 (остаток 1).
Затем вы получаете вторую с конца: 28/2 = 14 (остаток 0).
Дальнейшие шаги: 14/2 = 7 (остаток 0);
7/2 = 3 (остаток 1);
3/2 = 1 (остаток 1);
1/2 = 0 (остаток 1).
Это последний шаг, потому что результат деления равен нулю. В итоге вы получили двоичное число 111001.
Проверьте правильность ответа: 111001 = 2^0 + 2^3 + 2^4 + 2^5 = 1 + 8 + 16 + 32 = 57.
Вторая , используемая в компьютерных вопросах - шестнадцатеричная. В ней не десять, а шестнадцать цифр. Чтобы не новых условных обозначений, первые десять цифр шестнадцатеричной системы обозначаются обычными цифрами, а остальные шесть - латинскими буквами: A, B, C, D, E, F. десятичной записи они соответствуют числа м от 10 до 15. Во избежание путаницы перед числом, записанным по шестнадцатеричной системе, ставят знак # или символы 0x.
Обратный перевод из десятичной системы
в шестнадцатеричную совершается тем же методом остатков, что и в двоичную. Например, возьмите число 10000. Последовательно деля его на 16 и записывая остатки, вы получите:
10000/16 = 625 (остаток 0).
625/16 = 39 (остаток 1).
39/16 = 2 (остаток 7).
2/16 = 0 (остаток 2).
Результатом вычислений станет шестнадцатеричное число #2710.
Проверьте правильность ответа: #2710 = 1*(16^1) + 7*(16^2) + 2*(16^3) = 16 + 1792 + 8192 = 10000.
Переводить числа
из шестнадцатеричной системы
в двоичную гораздо проще. Число 16 является двойки: 16 = 2^4. Поэтому каждую шестнадцатеричную цифру можно записать как четырехзначное двоичное число. Если у вас в двоичном числе получается меньше четырех знаков, добавляйте в начало нули.
Например, #1F7E = (0001)(1111)(0111)(1110) = 1111101111110.
Проверьте правильность ответа: оба числа
в десятичной записи равны 8062.
Для перевода вам нужно разбить двоичное число на группы по четыре цифры, начиная с конца, и каждую такую группу заменить шестнадцатеричной цифрой.
Например, 11000110101001 превращается в (0011)(0001)(1010)(1001), что в шестнадцатеричной записи дает #31A9. Правильность ответа подтверждается переводом в десятичную запись: оба числа
равны 12713.
Совет 5: Как перевести число в двоичную систему исчисления
Благодаря ограниченности в использовании символов двоичная система является наиболее удобной для использования в компьютерах и других цифровых устройствах. Символов всего два: 1 и 0, поэтому эту систему применяют в работе регистров.
Инструкция
Двоичная является позиционной, т.е. позиции каждой цифры в числе соответствует определенный разряд, который равен двум в соответствующей степени. Степень начинается с нуля и увеличивается по мере движения справа налево. Например, число 101 равно 1*2^0 + 0*2^1 + 1*2^2 = 5.
Рассмотрим десятичного числа в двоичную систему методом последовательного деления на 2.Чтобы перевести десятичное число 25 в код, необходимо делить его на 2 до тех пор, пока не останется 0. Остатки, полученные на каждом шаге деления, записываются в строку справа налево, после записи цифры последнего остатка это и будет итоговое
Способы перевода чисел из одной системы счисления в другую.
Перевод чисел из одной позиционной системы счисления в другую: перевод целых чисел.
Чтобы перевести целое число из одной системы счисления с основанием d1 в другую с основанием d2 необходимо последовательно делить это число и получаемые частные на основание d2 новой системы до тех пор, пока не получится частное меньше основания d2. Последнее частное - старшая цифра числа в новой системе счисления с основанием d2, а следующие за ней цифры - это остатки от деления, записываемые в последовательности, обратной их получению. Арифметические действия выполнять в той системе счисления, в которой записано переводимое число.
Пример 1. Перевести число 11(10) в двоичную систему счисления.
Ответ: 11(10)=1011(2).
Пример 2. Перевести число 122(10) в восьмеричную систему счисления.
Ответ: 122(10)=172(8).
Пример 3. Перевести число 500(10) в шестнадцатеричную систему счисления.
Ответ: 500(10)=1F4(16).
Перевод чисел из одной позиционной системы счисления в другую: перевод правильных дробей.
Чтобы перевести правильную дробь из системы счисления с основанием d1 в систему с основанием d2, необходимо последовательно умножать исходную дробь и дробные части получающихся произведений на основание новой системы счисления d2. Правильная дробь числа в новой системе счисления с основанием d2 формируется в виде целых частей получающихся произведений, начиная с первого.
Если при переводе получается дробь в виде бесконечного или расходящегося ряда, процесс можно закончить при достижении необходимой точности.
При переводе смешанных чисел, необходимо в новую систему перевести отдельно целую и дробную части по правилам перевода целых чисел и правильных дробей, а затем оба результата объединить в одно смешанное число в новой системе счисления.
Пример 1. Перевести число 0,625(10) в двоичную систему счисления.
Ответ: 0,625(10)=0,101(2).
Пример 2. Перевести число 0,6(10) в восьмеричную систему счисления.
Ответ: 0,6(10)=0,463(8).
Пример 2. Перевести число 0,7(10) в шестнадцатеричную систему счисления.
Ответ: 0,7(10)=0,В333(16).
Перевод двоичных, восьмеричных и шестнадцатеричных чисел в десятичную систему счисления.
Для перевода числа P-ичной системы в десятичную необходимо использовать следующую формулу разложения:
аnan-1…а1а0=аnPn+ аn-1Pn-1+…+ а1P+a0 .
Пример 1. Перевести число 101,11(2) в десятичную систему счисления.
Ответ: 101,11(2)= 5,75(10) .
Пример 2. Перевести число 57,24(8) в десятичную систему счисления.
Ответ: 57,24(8) = 47,3125(10) .
Пример 3. Перевести число 7A,84(16) в десятичную систему счисления.
Ответ: 7A,84(16)= 122,515625(10) .
Перевод восьмеричных и шестнадцатеричных чисел в двоичную систему счисления и обратно.
Для перевода числа из восьмеричной системы счисления в двоичную необходимо каждую цифру этого числа записать трехразрядным двоичным числом (триадой).
Пример: записать число 16,24(8) в двоичной системе счисления.
Ответ: 16,24(8)= 1110,0101(2) .
Для обратного перевода двоичного числа в восьмеричную систему счисления, необходимо исходное число разбить на триады влево и вправо от запятой и представить каждую группу цифрой в восьмеричной системе счисления. Крайние неполные триады дополняют нулями.
Пример: записать число 1110,0101(2) в восьмеричной системе счисления.
Ответ: 1110,0101(2)= 16,24(8) .
Для перевода числа из шестнадцатеричной системы счисления в двоичную необходимо каждую цифру этого числа записать четырехразрядным двоичным числом (тетрадой).
Пример: записать число 7A,7E(16) в двоичной системе счисления.
Ответ: 7A,7E(16)= 1111010,0111111(2) .
Примечание: незначащие нули слева для целых чисел и справа для дробей не записываются.
Для обратного перевода двоичного числа в шестнадцатеричную систему счисления, необходимо исходное число разбить на тетрады влево и вправо от запятой и представить каждую группу цифрой в шестнадцатеричной системе счисления. Крайние неполные триады дополняют нулями.
Пример: записать число 1111010,0111111(2) в шестнадцатеричной системе счисления.
1. Порядковый счет в различных системах счисления.
В современной жизни мы используем позиционные системы счисления, то есть системы, в которых число, обозначаемое цифрой, зависит от положения цифры в записи числа. Поэтому в дальнейшем мы будем говорить только о них, опуская термин «позиционные».
Для того чтобы научиться переводить числа из одной системы в другую, поймем, как происходит последовательная запись чисел на примере десятичной системы.
Поскольку у нас десятичная система счисления, мы имеем 10 символов (цифр) для построения чисел. Начинаем порядковый счет: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Цифры закончились. Мы увеличиваем разрядность числа и обнуляем младший разряд: 10. Затем опять увеличиваем младший разряд, пока не закончатся все цифры: 11, 12, 13, 14, 15, 16, 17, 18, 19. Увеличиваем старший разряд на 1 и обнуляем младший: 20. Когда мы используем все цифры для обоих разрядов (получим число 99), опять увеличиваем разрядность числа и обнуляем имеющиеся разряды: 100. И так далее.
Попробуем сделать то же самое в 2-ной, 3-ной и 5-ной системах (введем обозначение для 2-ной системы, для 3-ной и т.д.):
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 10 | 3 |
4 | 100 | 11 | 4 |
5 | 101 | 12 | 10 |
6 | 110 | 20 | 11 |
7 | 111 | 21 | 12 |
8 | 1000 | 22 | 13 |
9 | 1001 | 100 | 14 |
10 | 1010 | 101 | 20 |
11 | 1011 | 102 | 21 |
12 | 1100 | 110 | 22 |
13 | 1101 | 111 | 23 |
14 | 1110 | 112 | 24 |
15 | 1111 | 120 | 30 |
Если система счисления имеет основание больше 10, то нам придется вводить дополнительные символы, принято вводить буквы латинского алфавита. Например, для 12-ричной системы кроме десяти цифр нам понадобятся две буквы ( и ):
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
9 | 9 |
10 | |
11 | |
12 | 10 |
13 | 11 |
14 | 12 |
15 | 13 |
2.Перевод из десятичной системы счисления в любую другую.
Чтобы перевести целое положительное десятичное число в систему счисления с другим основанием, нужно это число разделить на основание. Полученное частное снова разделить на основание, и дальше до тех пор, пока частное не окажется меньше основания. В результате записать в одну строку последнее частное и все остатки, начиная с последнего.
Пример 1. Переведем десятичное число 46 в двоичную систему счисления.
Пример 2. Переведем десятичное число 672 в восьмеричную систему счисления.
Пример 3. Переведем десятичное число 934 в шестнадцатеричную систему счисления.
3. Перевод из любой системы счисления в десятичную.
Для того, чтобы научиться переводить числа из любой другой системы в десятичную, проанализируем привычную нам запись десятичного числа.
Например, десятичное число 325 – это 5 единиц, 2 десятка и 3 сотни, т.е.
Точно так же обстоит дело и в других системах счисления, только умножать будем не на 10, 100 и пр., а на степени основания системы счисления. Для примера возьмем число 1201 в троичной системе счисления. Пронумеруем разряды справа налево начиная с нуля и представим наше число как сумму произведений цифры на тройку в степени разряда числа:
Это и есть десятичная запись нашего числа, т.е.
Пример 4. Переведем в десятичную систему счисления восьмеричное число 511.
Пример 5. Переведем в десятичную систему счисления шестнадцатеричное число 1151.
4. Перевод из двоичной системы в систему с основанием «степень двойки» (4, 8, 16 и т.д.).
Для преобразования двоичного числа в число с основанием «степень двойки» необходимо двоичную последовательность разбить на группы по количеству цифр равному степени справа налево и каждую группу заменить соответствующей цифрой новой системы счисления.
Например, Переведем двоичное 1100001111010110 число в восьмеричную систему. Для этого разобьем его на группы по 3 символа начиная справа (т.к. ), а затем воспользуемся таблицей соответствия и заменим каждую группу на новую цифру:
Таблицу соответствия мы научились строить в п.1.
0 | 0 |
1 | 1 |
10 | 2 |
11 | 3 |
100 | 4 |
101 | 5 |
110 | 6 |
111 | 7 |
Т.е.
Пример 6. Переведем двоичное 1100001111010110 число в шестнадцатеричную систему.
0 | 0 |
1 | 1 |
10 | 2 |
11 | 3 |
100 | 4 |
101 | 5 |
110 | 6 |
111 | 7 |
1000 | 8 |
1001 | 9 |
1010 | A |
1011 | B |
1100 | C |
1101 | D |
1110 | E |
1111 | F |
5.Перевод из системы с основанием «степень двойки» (4, 8, 16 и т.д.) в двоичную.
Этот перевод аналогичен предыдущему, выполненному в обратную сторону: каждую цифру мы заменяем группой цифр в двоичной системе из таблицы соответствия.
Пример 7. Переведем шестнадцатеричное число С3A6 в двоичную систему счисления.
Для этого каждую цифру числа заменим группой из 4 цифр (т.к. ) из таблицы соответствия, дополнив при необходимости группу нулями вначале: