Десятичная сс — это лишь одна из множества систем счисления. Ручное преобразование таких чисел в другие сс — это полезный навык, который помогает глубже понять принципы работы с данными в вычислительной технике. Хотя современные инструменты и программы выполняют эти преобразования автоматически, понимание базовых алгоритмов необходимо для успешного решения задач в области информатики и программирования. Разбираемся, как совершать перевод вручную, в этой статье.
Перевод из двоичной системы в десятичную
Преобразование числа из двоичной сс в десятичную выполняется путем суммирования значений каждой цифры (бита), умноженных на соответствующую степень двойки. Вот пошаговая инструкция:
Шаг 1: Запишите двоичное число. Разряды — это позиции цифр в нем. Нужно посчитать их справа налево, начиная с 0. Самый правый имеет позицию 0, следующий — 1, и так далее.
Пример: Рассмотрим 101101₂. В нем 6 разрядов.
Шаг 2: Вычислите степень двойки, соответствующую разряду.
Для нашего примера:
• Разряд 0: 2⁰ = 1
• Р. 1: 2¹ = 2
• Р. 2: 2² = 4
• Р. 3: 2³ = 8
• Р. 4: 2⁴ = 16
• Р. 5: 2⁵ = 32
Шаг 3: Умножьте значение каждого разряда (0 или 1) на соответствующую степень двойки, которую мы определили ранее:
• Р. 0 (1): 1 * 2⁰ = 1
• Р. 1 (0): 0 * 2¹ = 0
• Р. 2 (1): 1 * 2² = 4
• Р. 3 (1): 1 * 2³ = 8
• Р. 4 (0): 0 * 2⁴ = 0
• Р. 5 (1): 1 * 2⁵ = 32
Шаг 4: Сложите все результаты, полученные только что. Эта сумма представляет десятичный эквивалент двоичного числа:
1 + 0 + 4 + 8 + 0 + 32 = 45
Шаг 5: Запишите полученную сумму. Таким образом, 101101₂ = 45₁₀
Перевод дробного числа
Если двоичное число не целое, то, чтобы перевести его в десятичную систему, используется отрицательная степень двойки. Позиции слева от точки имеют положительные степени, а справа — отрицательные.
Пример: 1101.101₂
• 1 * 2³ = 8
• 1 * 2² = 4
• 0 * 2¹ = 0
• 1 * 2⁰ = 1
• 1 * 2⁻¹ = 0.5
• 0 * 2⁻² = 0
• 1 * 2⁻³ = 0.125
Сумма: 8 + 4 + 0 + 1 + 0.5 + 0 + 0.125 = 13.625
Таким образом, 1101.101₂ = 13.625₁₀
Важно: ключевым моментом является правильное определение степени двойки для каждой позиции бита и аккуратное суммирование результатов.
Перевод из шестнадцатеричной системы в десятичную
Преобразование шестнадцатеричного числа в десятичное выполняется аналогично переводу из двоичной системы, но с использованием степеней шестнадцати.
Шаг 1: Запишите шестнадцатеричное число и определите количество позиций в нем, начиная отсчет справа налево с 0.
Пример: Рассмотрим 1A7F₁₆. В нем 4 разряда.
Шаг 2: Шестнадцатеричная система использует цифры от 0 до 9 и буквы A-F (10–15 соответственно). Замените все буквы на их десятичные эквиваленты:
• A = 10
• B = 11
• C = 12
• D = 13
• E = 14
• F = 15
В нашем примере: 1A7F₁₆ становится 1 10 7 15.
Шаг 3: Для каждой позиции вычислите степень шестнадцати, соответствующую его позиции (начиная с 0 справа налево):
• Р. 0: 16⁰ = 1
• Р. 1: 16¹ = 16
• Р. 2: 16² = 256
• Р. 3: 16³ = 4096
Шаг 4: Умножьте полученный эквивалент каждой шестнадцатеричной цифры на соответствующую степень шестнадцати:
• Р. 0 (15): 15 * 16⁰ = 15
• Р. 1 (7): 7 * 16¹ = 112
• Р. 2 (10): 10 * 16² = 2560
• Р. 3 (1): 1 * 16³ = 4096
Шаг 5: Суммирование результатов
Сложите все полученные результаты:
4096 + 2560 + 112 + 15 = 6783
Шаг 6: Запись результата
Запишите полученную сумму.
Получается, 1A7F₁₆ = 6783₁₀
Пример с дробной частью
Если шестнадцатеричное число не целое, используйте отрицательные степени шестнадцати для её конвертации.
Пример: 1A.C₁₆
• 1 * 16¹ = 16
• 10 * 16⁰ = 10
• 12 * 16⁻¹ = 12/16 = 0.75
Сумма: 16 + 10 + 0.75 = 26.75
Таким образом, 1A.C₁₆ = 26.75₁₀
Как видите, принцип конвертации такой же, как и с двоичной системой. Так же мы работаем и с другими сс. Обращаем внимание на десятичные эквиваленты при вычислении степеней 2/3/4 и так далее (в зависимости от того, какое основание у числа).
Преобразование десятичных чисел в другие системы счисления
Процесс преобразования десятичного числа в другую сс включает два основных этапа:
- Деление с остатком: делим число на основание. Записываем остаток от деления.
- Повторение: частное от деления снова делим на основание. Процесс повторяем до тех пор, пока частное не станет меньше основания. Последний остаток и полученные частные образуют число в новой сс.
Важно: Цифры в сс должны быть меньше основания на 1. Например, в двоичной используются цифры 0 и 1, а в шестнадцатеричной от 0 до 9 и буквы A (10), B (11), C (12), D (13), E (14), F (15).
Перевод десятичного 25 в двоичную сс:
Деление | Частное | Остаток |
25/2 | 12 | 1 |
12/2 | 6 | 0 |
6/2 | 3 | 0 |
3/2 | 1 | 1 |
1/2 | 0 | 1 |
Читаем остатки снизу вверх: 11001₂. Таким образом, 25₁₀ = 11001₂.
Перевод десятичного 123 в восьмеричную сс:
Деление | Частное | Остаток |
123/8 | 15 | 3 |
15/8 | 1 | 7 |
1/8 | 0 | 1 |
Остатки снизу вверх: 173₈. Таким образом, 123₁₀ = 173₈.
Перевод десятичного 255 в систему с основанием 16:
Деление | Частное | Остаток |
255/16 | 15 | 15 (F) |
15/16 | 0 | 15 (F) |
Остатки снизу вверх: FF₁₆. Таким образом, 255₁₀ = FF₁₆.
Перевод дробного десятичного числа
Если такое число не является целым, то мы переводим его в два этапа:
- Целая часть: целая часть — по описанному выше алгоритму деления с остатком.
- Дробная часть: она умножается на основание. Целая часть результата записывается. Затем оставшаяся часть снова умножается на основание. Процесс повторяется до достижения нужной точности или пока дробная часть не станет равной нулю. Полученные целые части записываются слева направо.
Пример
Переводим десятичное 12,625 в двоичную систему:
Целая часть (12):
Деление | Частное | Остаток |
12/2 | 6 | 0 |
6/2 | 3 | 0 |
3/3 | 1 | 1 |
1/2 | 0 | 1 |
Целая часть в двоичной сс: 1100₂
Дробная часть (0.625):
Умножение | Результат | Целая часть |
0.625*2 | 1.25 | 1 |
0.25*2 | 0.5 | 0 |
0.5*2 | 1.0 | 1 |
В двоичной сс: 101₂
Таким образом, 12.625₁₀ = 1100.101₂
Заключение
Перевод чисел между сс — одна из самых простых, но важных тем ЕГЭ по информатике. Ты можешь решать задачи не только с использованием навыка программирования, но и вручную.
Полезные статьи по СС:
Бесплатный вводный урок в школе insperia