Перевод из двоичной в десятичную - все просто. Способы перевода чисел из одной системы счисления в другую
| 6 классы | Планирование уроков на учебный год | Перевод двоичных чисел в десятичную систему счисления
Урок 5
Перевод двоичных чисел в десятичную систему счисления
Работа с приложением Калькулятор
Перевод целых десятичных чисел в двоичный код
Способ 1
Попробуем представить число 1409 в виде суммы членов второго ряда.
Воспользуемся методом разностей. Возьмем ближайший к исходному числу, но не превосходящий его член второго ряда и составим разность:
1409 - 1024 = 385.
Возьмем ближайший к полученной разности, но не превосходящий ее член второго ряда и составим разность:
385 - 256 = 129.
Аналогично составим разность: 129 - 128 = 1.
В итоге получим:
1409 = 1024 + 256 + 128 + 1 = 1 1024 + 0 512 + 1 256 + + 1 128 + 0 64 + 0 32 + 0 16 + 0 8 + 0 4 + 0 2 + 1 1.
Мы видим, что каждый член второго ряда может либо не входить в сумму, либо входить в нее только один раз.
Числа 1 и 0, на которые умножаются члены второго ряда, также составляют исходное число 1409, но в его другой, двоичной записи: 10110000001.
Результат записывают так:
1409 10 = 10110000001 2 .
Исходное число мы записали с помощью 0 и 1, другими словами, получили двоичный код этого числа, или представили число в двоичной системе счисления.
Способ 2
Этот способ получения двоичного кода десятичного числа основан на записи остатков от деления исходного числа и получаемых частных на 2, продолжаемого до тех пор, пока очередное частное не окажется равным 0.
Пример:
В первую ячейку верхней строки записано исходное число, а в каждую следующую - результат целочисленного деления предыдущего числа на 2.
В ячейках нижней строки записаны остатки от деления стоящих в верхней строке чисел на 2.
Последняя ячейка нижней строки остается пустой. Двоичный код исходного десятичного числа получается при последовательной записи всех остатков, начиная с последнего: 1409 10 = 10110000001 2 .
Первые 20 членов натурального ряда в двоичной системе счисления записываются так: 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011,1100, 1101,1110,1111, 10000. 10001. 10010. 10011. 10100.
Перевод целых чисел из двоичной системы счисления в десятичную
Способ 1
Пусть имеется число 111101 2 . Его можно представить так:
Способ 2
Возьмем то же число 111101 2 . Переведем единицу 6-го разряда (первая слева в записи числа) в единицы 5-го разряда, для чего 1 умножим на 2, ибо единица 6-го разряда в двоичной системе содержит 2 единицы 5-го разряда.
К полученным 2 единицам 5-го разряда прибавим имеющуюся единицу 5-го разряда. Переведем эти 3 единицы 5-го разряда в 4-й разряд и прибавим имеющуюся единицу 4-го разряда: 3 2 + 1 = 7.
Переведем 7 единиц 4-го разряда в 3-й разряд и прибавим имеющуюся единицу 3-го разряда: 7 2 + 1 = 15.
Переведем 15 единиц 3-го разряда во 2-й разряд: 15 2 = 30. В исходном числе во 2-м разряде единиц нет.
Переведем 30 единиц 2-го разряда в 1-й разряд и прибавим имеющуюся там единицу: 30 2 + 1 = 61. Мы получили, что исходное число содержит 61 единицу 1-го разряда.
Письменные вычисления удобно располагать так:
Переводить целые числа из десятичной системы счисления в двоичную систему счисления и обратно можно с помощью приложения Калькулятор
.
Проведем небольшой эксперимент .
1. Запустите приложение Калькулятор и выполните команду [Вид-Инженерный] . Обратите внимание на группу переключателей, определяющих систему счисления :
2. Убедитесь, что Калькулятор настроен на работу в десятичной системе счисления. С помощью клавиатуры или мыши введите в поле ввода произвольное двузначное число. Активизируйте переключатель Bin и проследите за изменениями в окне ввода. Вернитесь в десятичную систему счисления. Очистите поле ввода.
3. Повторите пункт 2 несколько раз для других десятичных чисел.
4. Настройте Калькулятор на работу в двоичной системе счисления. Обратите внимание на то, какие кнопки Калькулятора и цифровые клавиши клавиатуры вам доступны. Поочередно введите двоичные коды 5-го, 10-го и 15-го членов натурального ряда и с помощью переключателя Dec переведите их в десятичную систему счисления.
Результат уже получен!
Системы счисления
Существуют позиционные и не позиционные системы счисления. Арабская система счисления, которым мы пользуемся в повседневной жизни, является позиционной, а римская − нет. В позиционных системах счисления позиция числа однозначно определяет величину числа. Рассмотрим это на примере числа 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). Далее объединяя эти результаты получим.
Впервые позиционная система счисления возникла в древнем Вавилоне. В Индии система работает в виде
позиционной десятичной нумерации с использованием нуля, у индусов данную систему чисел
позаимствовала арабская нация, у них, в свою очередь, взяли европейцы. В Европе эту систему стали
называть арабской.
Позиционная система — значение всех цифр зависит от позиции (разряда) данной цифры в числе.
Примеры, стандартная 10-я система счисления - это позиционная система. Допустим дано число 453.
Цифра 4 обозначает сотни и соответствует числу 400, 5 — кол-во десятков и соответствует значению 50,
а 3 — единицы и значению 3. Легко заметить, что с увеличением разряда увеличивается значение.
Таким образом, заданное число запишем в виде суммы 400+50+3=453.
Двоичная система счисления.
Здесь только 2 цифры - это 0 и 1. Основание двоичной системы - число 2.
Цифра, которая находится с самого края справа, указывает количество единиц, вторая цифра -
Во всех разрядах возможна лишь одна цифра — или нуль, или единица.
С помощью двоичной системы счисления возможно закодировать всякое натуральное число, представив
это число в виде последовательности нулей и единиц.
Пример: 10112 = 1*2 3 + 0*2*2+1*2 1 +1*2 0 =1*8 + 1*2+1=1110
Двоичную систему счисления, как и десятичную систему счисления , зачастую используют в вычислительной
технике. Текст и числа компьютер хранит в своей памяти в двоичном коде и программным способом преобразует
в изображение на экране.
Сложение, вычитание и умножение двоичных чисел.
Таблица сложения в двоичной системе счисления:
10 (перенос в старший разряд) |
Таблица вычитания в двоичной системе счисления:
(заём из старшего разряда) 1 |
Пример сложения «столбиком» (14 10 + 5 10 = 19 10 или 1110 2 + 101 2 = 10011 2):
+ | 1 | 1 | 1 | 0 | |
1 | 0 | 1 | |||
1 | 0 | 0 | 1 | 1 |
Таблица умножения в двоичной системе счисления:
Пример умножения «столбиком» (14 10 * 5 10 = 70 10 или 1110 2 * 101 2 = 1000110 2):
* | 1 | 1 | 1 | 0 | |||
1 | 0 | 1 | |||||
+ | 1 | 1 | 1 | 0 | |||
1 | 1 | 1 | 0 | ||||
= | 1 | 0 | 0 | 0 | 1 | 1 | 0 |
Преобразование чисел в двоичной системе счисления.
Для преобразования из двоичной системы в десятичную пользуются следующей таблицей степеней
основания 2:
Начиная с цифры один каждая цифра умножается на 2. Точка, стоящая после 1, называют двоичной точкой .
Преобразование двоичных чисел в десятичные.
Пусть, есть двоичное число 110001 2 . Для перевода в десятичное записываем его в виде суммы по
разрядам следующим образом:
1 * 2 5 + 1 * 2 4 + 0 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 49
Немного по другому:
1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49
Также хорошо записывать расчет как таблицу:
Двигаемся справа налево. Под всеми двоичными единицами записываем её эквивалент строчкой ниже.
Преобразование дробных двоичных чисел в десятичные.
Задание: перевести число 1011010, 101 2 в десятичную систему.
Записываем заданное число в таком виде:
1*2 6 +0*2 5 +1*2 4 +1*2 3 +0 *2 2 + 1 * 2 1 + 0 * 2 0 + 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
Либо в виде таблицы:
0.25 |
0.125 |
||||||||
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 в дробное двоичное число.
Переведя целую часть, получаем 206 10 =11001110 2 . Дробная часть 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
Результат: 206,116 10 ≈ 11001110,0001110110 2
Алгоритм перевода чисел из одной системы счисления в другую.
1. Из десятичной системы счисления:
- делим число на основание переводимой системы счисления;
- находим остаток от деления целой части числа;
- записываем все остатки от деления в обратном порядке;
2. Из двоичной системы счисления:
- для перевода в десятичную систему счисления находим сумму произведений основания 2 на
соответствующую степень разряда;
Замечание 1
Если вы хотите перевести число из одной системы счисления в другую, то удобнее для начала перевести его в десятичную систему счисления, и уже только потом из десятичной перевести в любую другую систему счисления.
Правила перевода чисел из любой системы счисления в десятичную
В вычислительной технике, использующей машинную арифметику, большую роль играет преобразование чисел из одной системы счисления в другую. Ниже приведем основные правила таких преобразований (переводов).
При переводе двоичного числа в десятичное требуется представить двоичное число в виде многочлена , каждый элемент которого представлен в виде произведения цифры числа и соответствующей степени числа основания, в данном случае $2$, а затем нужно вычислить многочлен по правилам десятичной арифметики:
$X_2=A_n \cdot 2^{n-1} + A_{n-1} \cdot 2^{n-2} + A_{n-2} \cdot 2^{n-3} + ... + A_2 \cdot 2^1 + A_1 \cdot 2^0$
Рисунок 1. Таблица 1
Пример 1
Число $11110101_2$ перевести в десятичную систему счисления.
Решение. Используя приведенную таблицу $1$ степеней основания $2$, представим число в виде многочлена:
$11110101_2 = 1 \cdot 27 + 1 \cdot 26 + 1 \cdot 25 + 1 \cdot 24 + 0 \cdot 23 + 1 \cdot 22 + 0 \cdot 21 + 1 \cdot 20 = 128 + 64 + 32 + 16 + 0 + 4 + 0 + 1 = 245_{10}$
Для перевода числа из восьмеричной системы счисления в десятичную требуется представить его в виде многочлена, каждый элемент которого представлен в виде произведения цифры числа и соответствующей степени числа основания, в данном случае $8$, а затем нужно вычислить многочлен по правилам десятичной арифметики:
$X_8 = A_n \cdot 8^{n-1} + A_{n-1} \cdot 8^{n-2} + A_{n-2} \cdot 8^{n-3} + ... + A_2 \cdot 8^1 + A_1 \cdot 8^0$
Рисунок 2. Таблица 2
Пример 2
Число $75013_8$ перевести в десятичную систему счисления.
Решение. Используя приведенную таблицу $2$ степеней основания $8$, представим число в виде многочлена:
$75013_8 = 7\cdot 8^4 + 5 \cdot 8^3 + 0 \cdot 8^2 + 1 \cdot 8^1 + 3 \cdot 8^0 = 31243_{10}$
Для перевода числа из шестнадцатеричной системы счисления в десятичную необходимо его представить в виде многочлена, каждый элемент которого представлен в виде произведения цифры числа и соответствующей степени числа основания, в данном случае $16$, а затем нужно вычислить многочлен по правилам десятичной арифметики:
$X_{16} = A_n \cdot 16^{n-1} + A_{n-1} \cdot 16^{n-2} + A_{n-2} \cdot 16^{n-3} + ... + A_2 \cdot 16^1 + A_1 \cdot 16^0$
Рисунок 3. Таблица 3
Пример 3
Число $FFA2_{16}$ перевести в десятичную систему счисления.
Решение. Используя приведенную таблицу $3$ степеней основания $8$, представим число в виде многочлена:
$FFA2_{16} = 15 \cdot 16^3 + 15 \cdot 16^2 + 10 \cdot 16^1 + 2 \cdot 16^0 =61440 + 3840 + 160 + 2 = 65442_{10}$
Правила перевода чисел из десятичной системы счисления в другую
- Для перевода числа из десятичной системы счисления в двоичную его необходимо последовательно делить на $2$ до тех пор, пока не останется остаток, меньший или равный $1$. Число в двоичной системе представить как последовательность последнего результата деления и остатков от деления в обратном порядке.
Пример 4
Число $22_{10}$ перевести в двоичную систему счисления.
Решение:
Рисунок 4.
$22_{10} = 10110_2$
- Для перевода числа из десятичной системы счисления в восьмеричную его необходимо последовательно делить на $8$ до тех пор, пока не останется остаток, меньший или равный $7$. Число в восьмеричной системе счисления представить как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.
Пример 5
Число $571_{10}$ перевести в восьмеричную систему счисления.
Решение:
Рисунок 5.
$571_{10} = 1073_8$
- Для перевода числа из десятичной системы счисления в шестнадцатеричную систему его необходимо последовательно делить на $16$ до тех пор, пока не останется остаток, меньший или равный $15$. Число в шестнадцатеричной системе представить как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.
Пример 6
Число $7467_{10}$ перевести в шестнадцатеричную систему счисления.
Решение:
Рисунок 6.
$7467_{10} = 1D2B_{16}$
Для того чтобы перевести правильную дробь из десятичной системы счисления в недесятичную, необходимо дробную часть преобразуемого числа последовательно умножить на основание той системы, в которую ее требуется перевести. Дробь в новой системе будет представлена в виде целых частей произведений, начиная с первого.
Например: $0,3125_{(10)}$ в восьмеричной системе счисления будет выглядеть как $0,24_{(8)}$.
В данном случае можно столкнуться с проблемой, когда конечной десятичной дроби может соответствовать бесконечная (периодическая) дробь в недесятичной системе счисления. В данном случае количество знаков в дроби, представленной в новой системе, будет зависеть от требуемой точности. Также нужно отметить, что целые числа остаются целыми, а правильные дроби - дробями в любой системе счисления.
Правила перевода чисел из двоичной системы счисления в другую
- Чтобы перевести число из двоичной системы счисления в восьмеричную, его необходимо разбить на триады (тройки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую триаду нулями, затем каждую триаду заменить соответствующей восьмеричной цифрой согласно таблице 4.
Рисунок 7. Таблица 4
Пример 7
Число $1001011_2$ перевести в восьмеричную систему счисления.
Решение . Используя таблицу 4, переведем число из двоичной системы счисления в восьмеричную:
$001 001 011_2 = 113_8$
- Чтобы перевести число из двоичной системы счисления в шестнадцатеричную, его следует разбить на тетрады (четверки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую тетраду нулями, затем каждую тетраду заменить соответствующей восьмеричной цифрой согласно таблице 4.
Чтобы быстро переводить числа из десятичной системы счисления в двоичную, нужно хорошо знать числа "2 в степени". Например, 2 10 =1024 и т.д. Это позволит решать некоторые примеры на перевод буквально за секунды. Одной из таких задач является задача A1 из демо ЕГЭ 2012 года . Можно, конечно, долго и нудно делить число на "2". Но лучше решать по-другому, экономя драгоценное время на экзамене.
Метод очень простой. Суть его такая: если число, которое нужно перевести из десятичной системы, равно числу "2 в степени", то это число в двоичной системе содержит количество нулей, равное степени. Впереди этих нулей добавляем "1".
- Переведем число 2 из десятичной системы. 2=2 1 . Поэтому в двоичной системе число содержит 1 нуль . Впереди ставим "1" и получаем 10 2 .
- Переведем 4 из десятичной системы. 4=2 2 . Поэтому в двоичной системе число содержит 2 нуля . Впереди ставим "1" и получаем 100 2.
- Переведем 8 из десятичной системы. 8=2 3 . Поэтому в двоичной системе число содержит 3 нуля . Впереди ставим "1" и получаем 1000 2.
Аналогично и для других чисел "2 в степени".
Если число, которое нужно перевести, меньше числа "2 в степени" на 1, то в двоичной системе это число состоит только из единиц, количество которых равно степени.
- Переведем 3 из десятичной системы. 3=2 2 -1. Поэтому в двоичной системе число содержит 2 единицы . Получаем 11 2.
- Переведем 7 из десятичной системы. 7=2 3 -1. Поэтому в двоичной системе число содержит 3 единицы . Получаем 111 2.
На рисунке квадратиками обозначено двоичное представление числа, а слева розовым цветом-десятичное.
Аналогичен перевод и для других чисел "2 в степени-1".
Понятно, что перевод чисел от 0 до 8 можно сделать быстро или делением, или просто знать наизусть их представление в двоичной системе. Я привела эти примеры, чтобы Вы поняли принцип данного метода и использовали его для перевода более "внушительных чисел", например, для перевода чисел 127,128, 255, 256, 511, 512 и т.д.
Можно встретить такие задачи, когда нужно перевести число, не равное числу "2 в степени", но близкое к нему. Оно может быть больше или меньше числа "2 в степени". Разница между переводимым числом и числом "2 в степени" должна быть небольшая. Например, до 3. Представление чисел от 0 до 3 в двоичной системе надо просто знать без перевода.
Если число
больше
, то решаем так:
Переводим сначала число "2 в степени" в двоичную систему. А потом прибавляем к нему разницу между числом "2 в степени" и переводимым числом.
Например, переведем 19 из десятичной системы. Оно больше числа "2 в степени" на 3.
16=2 4 . 16 10 =10000 2 .
3 10 =11 2 .
19 10 =10000 2 +11 2 =10011 2 .
Если число меньше числа "2 в степени", то удобнее пользоваться числом "2 в степени-1". Решаем так:
Переводим сначала число "2 в степени-1" в двоичную систему. А потом вычитаем из него разницу между числом "2 в степени-1" и переводимым числом.
Например, переведем 29 из десятичной системы. Оно больше числа "2 в степени-1" на 2. 29=31-2.
31 10 =11111 2 .
2 10 =10 2 .
29 10 =11111 2 -10 2 =11101 2
Если разница между переводимым числом и числом "2 в степени" больше трех , то можно разбить число на составляющие, перевести каждую часть в двоичную систему и сложить.
Например, перевести число 528 из десятичной системы. 528=512+16. Переводим отдельно 512 и 16.
512=2 9
. 512 10 =1000000000
2 .
16=2 4
. 16 10 =10000
2 .
Теперь сложим столбиком: