Как в Excel перевести десятичное число в двоичное?

Функция ДЕС.В.ДВ() преобразует десятичное число в двоичное (в англ. версии DEC2BIN) Аналогичные этому, есть преобразователи в восьмиричное, шестнадцатиричное число: ДЕС.В.ВОСЬМ() и ДЕС.В.ШЕСТ()

excel dec2bin

Обратное действие – функция ДВ.В.ДЕС().

excel dec2bin

Количество символов двоичного числа ограничена 9 разрядами, т.е. таким образом excel может преобразовать в двоичное число не больше 511, даже попытка искусственно увеличить разрядность не помогает:

excel dec2bin

Но, тем не менее если все-таки хочется преобразовывать в двоичные числа большие 111111111, выход есть, нужно вспомнить о функции ОСТАТ(), или в англ. версии – MOD(). Функция возвращает остаток от деления аргумента «число» на значение аргумента «делитель». Т.е. ОСТАТ(512/512) = 0, ОСТАТ(513/512) = 1 и т.д.

Решение:

  1. Находим двоичное число от дроби: исходное число, деленное на 512.
  2. Находим двоичное число от остатка, указываем количество разрядов – 9.
  3. Сцепляем их вместе, хотя бы амперсандом (&). Тут возможны варианты, но это самое простое.

=ДЕС.В.ДВ(A1/512)&ДЕС.В.ДВ(ОСТАТ(A1;512);9)

excel dec2bin

Если вам не нужен нолик перед числом (а он появляется, если делить число меньше 512, например 64), то можно обернуть выражение в проверочную функцию ЕСЛИ. Полный вид заклинания, позволяет превращать десятичные числа до 262143 (512^2) в двоичные:

=ЕСЛИ(A1<512;ДЕС.В.ДВ(A1);ДЕС.В.ДВ(A1/512)&ДЕС.В.ДВ(ОСТАТ(A1;512);9))

excel dec2bin

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.