Обновлено:
Перевод в 2 систему счисления
Когда программист видит число 11010110, он мгновенно понимает, что это 214 в привычной нам десятичной записи. Студенту на экзамене по информатике тот же код покажется загадкой – пока он не освоит базовый приём перевода чисел в двоичную систему. Перевод в 2 систему счисления входит в школьную программу по информатике и требуется каждому, кто работает с компьютерами на уровне ниже пользовательского интерфейса.
| Шестнадцатеричная (16) | Двоичная (2) | Восьмеричная (8) | Двоичная (2) |
|---|---|---|---|
| 0 | 0000 | 0 | 000 |
| 1 | 0001 | 1 | 001 |
| 2 | 0010 | 2 | 010 |
| 3 | 0011 | 3 | 011 |
| 4 | 0100 | 4 | 100 |
| 5 | 0101 | 5 | 101 |
| 6 | 0110 | 6 | 110 |
| 7 | 0111 | 7 | 111 |
| 8 | 1000 | ||
| 9 | 1001 | ||
| A | 1010 | ||
| B | 1011 | ||
| C | 1100 | ||
| D | 1101 | ||
| E | 1110 | ||
| F | 1111 |
Что такое двоичная система счисления
Двоичная (бинарная) система – позиционная система счисления с основанием 2. Для записи чисел используются только два символа: 0 и 1. Каждая позиция (разряд) соответствует степени двойки, начиная с 2⁰ = 1 справа.
Сравнение распространённых систем:
| Система | Основание | Цифры |
|---|---|---|
| Двоичная | 2 | 0, 1 |
| Восьмеричная | 8 | 0–7 |
| Десятичная | 10 | 0–9 |
| Шестнадцатеричная | 16 | 0–9, A–F |
Основание системы – количество уникальных символов для записи чисел. Разряд – номер позиции цифры, определяющий её вес. В двоичной системе первый разряд (справа) весит 1, второй – 2, третий – 4, четвёртый – 8 и так далее.
Как перевести десятичное число в двоичную систему
Два основных метода работают с целыми числами. Оба дают одинаковый результат – выбирайте тот, который удобнее.
Метод деления на 2
Алгоритм простой: делите число на основание системы (2), записывая остатки. Остаток от деления любого целого на 2 всегда равен 0 или 1 – это и есть цифры двоичного числа.
Переведём число 43₁₀:
| Шаг | Деление | Остаток |
|---|---|---|
| 1 | 43 : 2 = 21 | 1 |
| 2 | 21 : 2 = 10 | 1 |
| 3 | 10 : 2 = 5 | 0 |
| 4 | 5 : 2 = 2 | 1 |
| 5 | 2 : 2 = 1 | 0 |
| 6 | 1 : 2 = 0 | 1 |
Записываем остатки снизу вверх: 101011. Результат: 43₁₀ = 101011₂.
Проверка: 1×32 + 0×16 + 1×8 + 0×4 + 1×2 + 1×1 = 32 + 8 + 2 + 1 = 43.
Метод подбора степеней двойки
Находим наибольшую степень двойки, не превышающую исходное число, вычитаем её и повторяем со следующим остатком. Для каждой степени ставим 1, если она участвовала в разложении, и 0 – если нет.
Степени двойки, полезные для запоминания: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1 024.
Переведём число 149₁₀:
Наибольшая степень ≤ 149 – это 128 (2⁷). Вычитаем: 149 − 128 = 21. Наибольшая степень ≤ 21 – это 16 (2⁴). Вычитаем: 21 − 16 = 5. Наибольшая степень ≤ 5 – это 4 (2²). Вычитаем: 5 − 4 = 1. Осталась 1 (2⁰).
Разложение: 2⁷ + 2⁴ + 2² + 2⁰. Расставляем единицы по соответствующим позициям:
| Разряд | 2⁷ | 2⁶ | 2⁵ | 2⁴ | 2³ | 2² | 2¹ | 2⁰ |
|---|---|---|---|---|---|---|---|---|
| Степень | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Значение | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 1 |
Результат: 149₁₀ = 10010101₂.
Как перевести дробное десятичное число в двоичную систему
Дробную часть переводят отдельно от целой. Метод – последовательное умножение на основание (2).
Алгоритм:
- Умножаем дробную часть на 2.
- Целая часть результата (0 или 1) становится следующей цифрой двоичного числа.
- Берём новую дробную часть и повторяем до получения нуля или нужной точности.
Переведём 0,6875₁₀:
| Умножение | Результат | Цифра |
|---|---|---|
| 0,6875 × 2 | 1,375 | 1 |
| 0,375 × 2 | 0,75 | 0 |
| 0,75 × 2 | 1,5 | 1 |
| 0,5 × 2 | 1,0 | 1 |
Дробная часть достигла нуля. Собираем сверху вниз: 0,6875₁₀ = 0,1011₂.
Не все десятичные дроби имеют конечное двоичное представление. Например, 0,1₁₀ превращается в бесконечную периодическую дробь 0,0001100110011…₂. Для практик результат всегда округляют до заданного количества знаков.
Полный пример – число 18,6875₁₀:
- Целая часть: 18₁₀ = 10010₂
- Дробная часть: 0,6875₁₀ = 0,1011₂
- Результат: 18,6875₁₀ = 10010,1011₂
Перевод из двоичной системы в десятичную
Каждую цифру умножаем на 2 в степени позиции (нумерация справа налево, начиная с нуля), складываем результаты.
Пример: 1011010₂
| Разряд | 1 | 0 | 1 | 1 | 0 | 1 | 0 |
|---|---|---|---|---|---|---|---|
| Степень 2ⁿ | 2⁶ | 2⁵ | 2⁴ | 2³ | 2² | 2¹ | 2⁰ |
| Значение | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Вклад | 64 | 0 | 16 | 8 | 0 | 2 | 0 |
Сумма: 64 + 16 + 8 + 2 = 90₁₀.
Упрощённый вариант – складывать только те степени, где стоит 1, пропуская нули.
Пример с дробной частью: 101,101₂
Целая часть: 1×4 + 0×2 + 1×1 = 5 Дробная часть: 1×2⁻¹ + 0×2⁻² + 1×2⁻³ = 0,5 + 0 + 0,125 = 0,625 Результат: 101,101₂ = 5,625₁₀.
Быстрый перевод: шестнадцатеричная и восьмеричная в двоичную
Каждая шестнадцатеричная цифра соответствует четырём двоичным (тетрада), каждая восьмеричная – трём (триада). Это самый быстрый способ перевода без арифметики.
| Hex | Bin | Oct | Bin |
|---|---|---|---|
| 0 | 0000 | 0 | 000 |
| 1 | 0001 | 1 | 001 |
| 2 | 0010 | 2 | 010 |
| 3 | 0011 | 3 | 011 |
| 4 | 0100 | 4 | 100 |
| 5 | 0101 | 5 | 101 |
| 6 | 0110 | 6 | 110 |
| 7 | 0111 | 7 | 111 |
| 8 | 1000 | – | – |
| 9 | 1001 | – | – |
| A | 1010 | – | – |
| B | 1011 | – | – |
| C | 1100 | – | – |
| D | 1101 | – | – |
| E | 1110 | – | – |
| F | 1111 | – | – |
Переведём 3F7₁₆: 3=0011, F=1111, 7=0111 → 001111110111₂ (ведущие нули можно опустить: 1111110111₂).
Переведём 56₈: 5=101, 6=110 → 101110₂.
Как записываются отрицательные числа
Компьютеры используют дополнительный код (two’s complement) для хранения отрицательных целых. Алгоритм получения:
- Переводим модуль числа в двоичную систему.
- Инвертируем все биты (0→1, 1→0) – получаем обратный код.
- Прибавляем 1 – получаем дополнительный код.
Пример: −25 в 8-битном представлении.
- 25₁₀ = 00011001₂
- Обратный код: 11100110
- Дополнительный код: 11100110 + 1 = 11100111₂
Старший бит (1) обозначает отрицательный знак. В таком формате 8 битов хранят числа от −128 до +127.
Где применяется двоичная система в 2026 году
- Процессорные инструкции – любой процессор декодирует команды машинного кода в двоичном виде.
- Двоично-десятичный код (BCD) – используется в финансовых системах и счётчиках для точного хранения десятичных дробей.
- Цветовые модели – каждый канал RGB хранится в одном байте (0–255), полный цвет описывается тремя двоичными значениями.
- IP-адреса и маски подсетей – IPv4 маски (например, /24) напрямую связаны с двоичным представлением адреса.
- Кодировки текста – таблицы ASCII и Unicode присваивают каждому символу уникальный двоичный код. Буква A = 01000001₂, буква Б = 11001000₂ в кодировке Windows-1251.
- Хеш-функции и криптография – все криптографические алгоритмы на низком уровне работают с битами.
- Цифровые микросхемы – от простых логических вентилей (AND, OR, NOT) до сложных процессоров и контроллеров памяти.
Таблица соответствия до 255
| Десятичное | Двоичное | Десятичное | Двоичное |
|---|---|---|---|
| 0 | 0 | 128 | 10000000 |
| 1 | 1 | 129 | 10000001 |
| 2 | 10 | 130 | 10000010 |
| 3 | 11 | 150 | 10010110 |
| 4 | 100 | 200 | 11001000 |
| 5 | 101 | 250 | 11111010 |
| 6 | 110 | 254 | 11111110 |
| 7 | 111 | 255 | 11111111 |
| 8 | 1000 | – | – |
| 9 | 1001 | – | – |
| 10 | 1010 | – | – |
| 15 | 1111 | – | – |
| 16 | 10000 | – | – |
| 31 | 11111 | – | – |
| 32 | 100000 | – | – |
| 63 | 111111 | – | – |
| 64 | 1000000 | – | – |
| 127 | 1111111 | – | – |
Расширенную таблицу с полным диапазоном до 255 включительно предоставляет калькулятор выше.
Частые ошибки при ручном переводе
Недопустимые цифры. В двоичной системе возможны только 0 и 1. Запись 10201₂ содержит цифру 2 и некорректна.
Прямой порядок остатков. Результат деления на 2 нужно записывать снизу вверх (от последнего остатка к первому). Частая ошибка – записать остатки в порядке получения сверху вниз.
Потеря позиций при вычитании степеней. Когда используете метод подбора, ставьте нули в позиции пропущенных степеней. Число 9 = 8 + 1 = 1001₂, а не 11₂.
Неправильная точность дробей. Если дробь не заканчивается нулём, задавайте достаточное число знаков. Для бытовых задач достаточно 4–6 знаков; в криптографии и научных вычислениях точность может достигать десятков знаков.
Краткий итог правил перевода
| Направление | Метод |
|---|---|
| Десятичное → двоичное (целое) | Деление на 2, остатки снизу вверх |
| Дробное десятичное → двоичное | Умножение на 2, целая часть каждого шага |
| Двоичное → десятичное | Сумма произведений цифр на 2ⁿ |
| Шестнадцатеричное → двоичное | Каждая hex-цифра → 4 бита |
| Восьмеричное → двоичное | Каждая oct-цифра → 3 бита |
Информация носит справочный характер. Для точных вычислений в производственных и финансовых задачах используйте специализированные программные средства.
Часто задаваемые вопросы
Почему компьютеры используют именно двоичную систему?
Компьютерные микросхемы работают с электрическими сигналами, имеющими два устойчивых состояния: есть ток и нет тока. Эти состояния удобно сопоставить с цифрами 1 и 0. Любая попытка использовать больше уровней потребовала бы сложной защиты от помех. Поэтому двоичное кодирование стало стандартом для всех цифровых устройств.
Можно ли перевести число 0 в двоичную систему?
Да, число ноль переводится в нуль любой системы счисления. При алгоритме деления на основание получаем частное 0 и остаток 0 – это и есть результат: 0₁₀ = 0₂. Аналогично ноль записывается в восьмеричной, шестнадцатеричной и других системах.
Какая максимальная десятичная цифра может быть записана одним байтом?
Один байт состоит из 8 бит, каждый из которых принимает значение 0 или 1. Максимальное беззнаковое число в одном байте – 255, что соответствует 11111111₂. Если байт знаковый, диапазон смещается от −128 до +127.
Как проверить правильность перевода в двоичную систему самостоятельно?
Выполните обратный перевод: умножьте каждую цифру полученного двоичного числа на 2 в степени позиции разряда (начиная с нуля справа) и сложите результаты. Если сумма совпадает с исходным десятичным числом, перевод выполнен верно. Дополнительная проверка – конвертация через калькулятор.
Что такое бит и байт в контексте двоичных чисел?
Бит – минимальная единица информации, принимающая значение 0 или 1. Байт состоит из 8 бит и позволяет закодировать 256 различных значений. Для передачи данных используются кратные единицы: килобайт (1 024 байта), мегабайт (1 048 576 байт) и так далее.
В каких ситуациях приходится переводить числа в двоичную систему?
Перевод нужен при изучении информатики, написании низкоуровневого кода, работе с микроконтроллерами и сетевыми протоколами, анализе адресов памяти, настройке масок подсетей, а также при разборе цветов в формате RGB. Понимание двоичного представления помогает находить ошибки в программах.