Изучим стандартные способы перевода чисел в различные системы счисления в Excel: двоичную, восьмеричную, десятичную и шестнадцатеричную.
Помимо повсеместно распространенной и всем нам хорошо известной десятичной системы счисления также используются и системы с другими основаниями (отличными от 10), например, двоичная, троичная, восьмеричная и т.д.
Большинство из них имеют достаточно широкое применение практически во всех современных электронных устройствах, в программировании или компьютерной документации.
В Excel есть возможность стандартными средствами переводить данные в четырех системах счисления:
Давайте подробно остановимся на основных вариантах преобразования данных.
Перевод числа из десятичной в двоичную систему в Excel
Для преобразования данных в двоичную запись в Excel существует стандартная функция ДЕС.В.ДВ (имя функции получается как первые буквы от слов ДЕСятичное В ДВоичное, дополнительно разделенное точками):
ДЕС.В.ДВ(число; [разрядность])
Преобразует десятичное число в двоичное.
- Число (обязательный аргумент) — десятичное целое число, которое требуется преобразовать;
- Разрядность (необязательный аргумент) — количество знаков для использования в записи.
Данный аргумент необходим если нужно приписать к двоичной записи данных ведущие нули. К примеру, число 1101 с разрядностью 7 будет иметь вид 0001101.
Обратите внимание, что Excel накладывает определенные ограничения на размер преобразуемых данных.
Двоичная запись не должна занимать более 10 знаков, поэтому десятичное число, соответственно, не должно быть больше 511 или меньше -512, иначе в качестве значения функция ДЕС.В.ДВ вернет ошибку.
Перевод числа из двоичной в десятичную систему в Excel
Для осуществления обратного перевода можно воспользоваться функцией ДВ.В.ДЕС:
ДВ.В.ДЕС(число)
Преобразует двоичное число в десятичное.
- Число (обязательный аргумент) — двоичное число, которое требуется преобразовать.
При этом разрядность в качестве аргумента функции для десятичной записи не используется.
Как и в случае с функцией ДЕС.В.ДВ при использовании ДВ.В.ДЕС существует ограничение на размер преобразуемых данных — не более 10 знаков в записи, в ином случае функция вернет значение ошибки.
Перевод в других системах счисления
Для других систем счисления (восьмеричной, шестнадцатеричной) также определен набор стандартных формул.
Для удобства мы составили таблицу со схемой выбора формулы для преобразования данных (в левом столбце указано откуда переводим данные, в верхней строчке — куда переводим):
Как и в примерах выше имена функций образуются по достаточно простому правилу — берутся первые буквы от названий систем в которых преобразуются данные и разделяются точками (ВОСЬМеричное В ШЕСТНадцатеричное и пр.)
Арифметические операции с данными
Операции в Excel осуществляются в десятичной системе счисления, поэтому при применении арифметических действий (сложение, вычитание и т.д.) для преобразованных данных учитывайте, что конечный результат также будет записан в десятичной записи:
Чтобы избежать подобной проблемы, необходимо сначала перевести все данные в десятичный вид, произвести требуемые вычисления, а уже затем вновь преобразовать полученный результат в исходную систему счисления:
Удачи вам и до скорых встреч на страницах блога Tutorexcel.ru!
Поделиться с друзьями:
Поиск по сайту:
Функция ОСНОВАНИЕ выполняет преобразование числового значение в указанную систему счисления (двоичная, восьмеричная, шестнадцатеричная и т. д.) и возвращает соответствующий результат в виде текстовой строки.
Примеры использования функции ОСНОВАНИЕ в Excel
Пример 1. Для хранения чисел в БД удобно использовать их представление в двоичной системе счисления. Выполнить преобразование представленных значений.
Исходная таблица:
Для преобразования используем формулу:
Описание аргументов:
- B2 – число, которое требуется преобразовать;
- 2 – указатель вида системы счисления.
Выполним преобразование для всех чисел. Полученный результат:
Ошибка #ЧИСЛО! Возникла потому, что -56 находится вне диапазона допустимых значений (отрицательное число). Результат вычисления формулы =ОСНОВАНИЕ(0,9;2) эквивалентен результату =ОСНОВАНИЕ(0;2), поскольку рассматриваемая функция усекает дробные значения аргумента число до целых значений.
Перевод числа из одной системы счисления в другую в Excel
Пример 2. Преобразовать числа, записанные в шестнадцатеричной системе счисления в двоичную систему с длиной полученной строки не менее 20 символов.
Таблица значений:
В Excel предусмотрена формула ШЕСТН.В.ДВ, однако она поддерживает значения из диапазона от FFFFFFFE00 до 1FF. Поэтому выполним промежуточное преобразование в десятичную систему и воспользуемся функцией ОСНОВАНИЕ для перевода в двоичную:
Описание аргументов:
- ШЕСТН.В.ДЕС(A2) – исходное число, преобразованное в десятичную систему счисления;
- 2 – указание на вид системы счисления;
- 20 – минимальное количество символов в возвращаемой строке.
Результаты расчетов:
Сложение чисел в разных системах счисления в Excel
Пример 3. Отобразить результаты сложения двух чисел, записанных в двоичной системе, в виде чисел в десяти- и тридцатидвухричных системах счисления.
Исходная таблица:
В ячейке A6 запишем следующую формулу:
Функция ДВ.В.ДЕС преобразует числа из двоичной в десятеричную систему.
В ячейке B6 запишем формулу:
В данном способе выполняется преобразование в понятную многим десятичную систему счисления, в которой и выполняется операция сложения чисел (вместо, например, алгоритма сложения в столбик в двоичной системе, где необходимо учитывать правила: 0+0=0, 1+1=10 и т. д.). Функцией ОСНОВАНИЕ выполняется преобразование результата в требуемые системы исчисления. Пример расчета:
Особенности использования функции ОСНОВАНИЕ в Excel
Функция имеет следующую синтаксическую запись:
=ОСНОВАНИЕ(число;основание;[минимальная_длина])
Описание аргументов:
- число – обязательный аргумент, характеризующий числовое значение из диапазона целых чисел от 0 до 253, которое требуется преобразовать к указанной системе счисления.
- основание – обязательный аргумент, характеризующий числовое значение из диапазона целых чисел от 2 до 36, которое является основанием требуемой системы исчисления.
- [минимальная_длина] – необязательный аргумент, характеризующий числовое значение из диапазона от 0 до 255, определяющее минимальную длину в символах возвращаемой текстовой строки.
Примечания:
- Функция возвращает код ошибки #ЧИСЛО!, если любой из ее аргументов является числовым значением, выходящим за пределы допустимых для данного аргумента значений.
- Если один или несколько аргументов являются текстовой строкой, рассматриваемая функция вернет код ошибки #ЗНАЧ!.
- Функция доступна только в новых версиях программы (Excel 2013 и более поздних).
- В отличие, например, от функции ДЕС.В.ДВ, которая выполняет преобразование чисел из диапазона от -512 до 511, функция ОСНОВАНИЕ выполняет преобразование чисел от 0 до 253.
- При явном указании аргумента [минимальная_длина] возможны следующие ситуации:
- длина полученного значения меньше, чем регламентируется аргументом [минимальная_длина]. В этом случае в начале возвращаемой строки слева будет добавлено определенное количество нулей для достижения требуемой длины;
- длина рассчитанного значения больше, чем регламентируемая. Функция ОСНОВАНИЕ вернет полученный результат, не урезая его. Например, функция с аргументами (12345;2;20) вернет значение «00000011000000111001», а функция с аргументами (12345;2;2) вернет «11000000111001».
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel для iPad Excel для iPhone Excel для планшетов с Android Excel 2010 Excel 2007 Excel для Mac 2011 Excel для телефонов с Android Еще…Меньше
Система чисел является систематическим способом представления чисел символьными символами и использует базовое значение для удобной группировки чисел в сжатой форме. Самая распространенная система числов — десятичная, которая имеет базовое значение 10, и набор символов 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9. Однако существуют и другие числовые системы, которые могут быть более эффективными для определенной цели. Например, так как на компьютерах используется логическое значение для вычислений и операций, для выполнения вычислений и операций используется двоичная числовая система, которая имеет базовое значение 2.
Microsoft Office Excel есть несколько функций, которые можно использовать для преобразования чисел в числовые системы и из них:
Система номеров |
Базовое значение |
Набор символьных знаков |
Двоичный |
2 |
0,1 |
Восьмеричном |
8 |
0, 1, 2, 3, 4, 5, 6, 7 |
Действительное. |
10 |
0, 1, 2, 3, 4, 5, 6, 7, 8 и 9 |
Шестнадцатеричный |
16 |
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F |
Для этого используйте функцию ДВ.В.Е.
|
|
Для этого используйте функцию ДВ.В.EX.
|
|
Для этого используйте функцию ДВ.В.ВЕХ.
|
|
Для этого используйте функцию DEC2BIN.
|
|
Для этого используйте функцию DEC2HEX.
|
|
Для этого используйте функцию DEC2OCT.
|
|
Для этого используйте функцию HEX2BIN.
|
|
Для этого используйте функцию HEX2DEC.
|
|
Для этого используйте функцию HEX2OCT.
|
|
Для этого используйте функцию ВОСЬМ.В.ДВ.
|
|
Для этого используйте функцию ВОСЬМ.В.Е.
|
|
Для этого используйте функцию ВОСЬМ.В.EX.
|
|
Нужна дополнительная помощь?
Перейти к содержимому
Системы исчисления в программе «Эксель».
В мире существует множество различных способов записи чисел и систем исчисления. В текущем столетии самыми популярными являются системы исчисления:
• Двоичная;
• Восьмеричная;
• Десятеричная;
• Шестнадцатеричная.
Программа «Excel» предусматривает возможность обработки информации в этих системах.
Для удобства перевода чисел из различных систем в привычную большинству пользователей десятеричную систему, а так же перевода чисел между восьмеричной, двоичной, шестнадцатеричной системами существует целый ряд функций. Эти функции позволяют произвести перевод чисел из одной системы в другую.
Рассмотрим эти функции:
• ДЕС.В.ДВ( ) – переводит десятичные числа в двоичные;
• ДЕС.В.ВОСЬМ( ) – переводит десятичные числа в восьмеричные;
• ДЕС.В.ШЕСТН( ) – переводит десятичные числа в шестнадцатеричные;
• ВОСЬМ.В.ДВ() – переводит восьмеричные в двоичные;
• ВОСЬМ.В.ДЕС() – переводит восьмеричные десятичные;
• ВОСЬМ.В.ШЕСТН() – переводит восьмеричные в шестнадцатеричные;
• ШЕСТН.В.ВОСЬМ() – переводит шестнадцатеричные в восьмеричные;
• ШЕСТН.В.ДВ() – переводит шестнадцатеричные в двоичные;
• ШЕСТН.В.ДЕС() – переводит шестнадцатеричные в десятичные;
• ДВ.В.ВОСЬМ() – переводит двоичные в восьмеричные;
• ДВ.В.ДЕС() – переводит двоичные в десятичные;
• ДВ.В. ШЕСТН() – переводит двоичные в шестнадцатеричные.
Пример использования:
• Установить курсор в ячейку, которой будет присвоено значение;
• Выбрать необходимую функцию при помощи мастера функций в зависимости от того в какую систему исчисления вы хотите перевести число;
• В появившемся окне указать ячейку с переводимым числом или прописать само число;
• Указать количество разрядов – количество знаков в написании числа при необходимости (для функций перевода в десятичную систему количество разрядов не указывается).
• Нажать «Enter» или «Ok».
Скачать таблицу перевода чисел между двоичной, восьмеричной, десятеричной и шестнадцатеричной системами исчисления.
Осуществить перевод чисел из разных систем исчисления можно различными способами. С помощью математических формул, с помощью онлайн сервисов. Запоминать возможности преобразования с помощью математических формул имеет смысл, если такого рода переводы необходимо выполнять ежедневно. У онлайн сервисов есть один недостаток в виде постоянного доступа к Интернет. Конечно представить место без доступа к Интернет уже сейчас довольно сложно, однако, бывает и такое.
Как бы там ни было, в рамках данной статьи рассмотрим способ перевода из разного рода систем счисления с помощью табличного процессора MS Excel. С помощью MS Excel существует возможность осуществить перевод из:
восьмеричной в двоичную с помощью функции ВОСЬМ.В.ДВ (OCT2BIN);
восьмеричной в десятичную с помощью функции ВОСЬМ.В.ДЕС (OCT2DEC);
восьмеричной в шестнадцатеричную с помощью функции ВОСЬМ.В.ШЕСТН (OCT2HEX);
двоичной в восьмеричную с помощью функции ДВ.В.ВОСЬМ (BIN2OCT);
двоичной в десятичную с помощью функции ДВ.В.ДЕС (BIN2DEC);
двоичной в шестнадцатеричную с помощью функции ДВ.В.ШЕСТН (BIN2HEX);
десятичной в восьмеричную с помощью функции ДЕС.В.ВОСЬМ (DEC2OCT);
десятичной в двоичную с помощью функции ДЕС.В.ДВ (DEC2BIN);
десятичной в шестнадцатеричную с помощью функции ДЕС.В.ШЕСТН (DEC2HEX);
шестнадцатеричной в восьмеричную с помощью функции ШЕСТН.В.ВОСЬМ (HEX2OCT);
шестнадцатеричной в двоичную с помощью функции ШЕСТН.В.ДВ (HEX2BIN);
шестнадцатеричной в десятичную с помощью функции ШЕСТН.В.ДЕС (HEX2DEC);
Перевод из восьмеричной системы в двоичную
Двоичная система | Восьмеричная система |
000 | 0 |
001 | 1 |
010 | 2 |
011 | 3 |
100 | 4 |
101 | 5 |
110 | 6 |
111 | 7 |
Например, 235 в восьмеричной системе равно: 5=101, 3=011, 2=010 и результат равен 010011101 или 10011101 (начальные нули в двоичной системе можно опустить).
Для осуществления данного преобразования с помощью MS Excel следует воспользоваться функцией ВОСЬМ.В.ДВ или OCT2BIN, если у Вас установлена англоязычная версия MS Excel.
Результатом будет одно и то же число, просто оно может быть записано с нулями вначале или без них.
Перевод из восьмеричной системы в десятичную
Например, число 235 будет равняться = 5*8(в нулевой степени) + 3*8(в первой степени) + 2*8(во второй степени) = 5*1+3*8+2*64=157
Для осуществления данного преобразования с помощью MS Excel следует воспользоваться функцией ВОСЬМ.В.ДЕС или OCT2DEC, если у Вас установлена англоязычная версия MS Excel.
Перевод из восьмеричной системы в шестнадцатеричную
С помощью MS Excel такой перевод предельно прост, как, впрочем, и остальные варианты, достаточно воспользоваться функцией ВОСЬМ.В.ШЕСТН или OCT2HEX, если у Вас установлена англоязычная версия MS Excel.
Перевод из двоичной системы в восьмеричную
Двоичная система | Восьмеричная система |
000 | 0 |
001 | 1 |
010 | 2 |
011 | 3 |
100 | 4 |
101 | 5 |
110 | 6 |
111 | 7 |
В восьмеричной системе получаем число: 111.
Перевод с помощью MS Excel следует воспользоваться функцией ДВ.В.ВОСЬМ или BIN2OCT, если работа ведется в англоязычной версии офиса.
Перевод из двоичной системы в десятичную
Переведем число 001001001 в десятичную систему счисления. 1*2(в степени 6)+ 0*2(в степени 5)+ 0*2(в степени 4)+ 1*2(в степени 3)+ 0*2(в степени 2)+ 0*2(в степени 1)+ 1*2(в степени 0) = 64+0+0+8+0+0+1 = 73.
Перевод с помощью MS Excel следует воспользоваться функцией ДВ.В.ДЕС или BIN2DEC, если работа ведется в англоязычной версии офиса.
Перевод из двоичной системы в шестнадцатеричную
Двоичная система | Шестнадцатеричная система |
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 |
Переведем число 1001001, предварительно запишем его как: 0100 1001, что равняется 49.
Перевод с помощью MS Excel следует воспользоваться функцией ДВ.В.ШЕСТН или BIN2HEX, если работа ведется в англоязычной версии офиса.
Перевод из десятичной системы в восьмеричную
- Делится десятичное число на 8. Частное от деления остается для следующего шага, а остаток от деления записывается как бит числа в восьмеричной системе счисления (справа на лево).
- Если частное не равно 0, то повторяется первый шаг, однако в качестве делимого берется уже частное. Новый остаток записывается в число в восьмеричной системе счисления справа на лево.
Шаги выполнять до тех пор, пока частное не станет равно 0, а остаток от деления меньше 8.
Для примера возьмем число 157.
157/8 = частное 19, остаток 5
19/8 = частное 2, остаток 3
2/8=частное 0, остаток 2
Итого, записав справа на лево числа, получаем: 235.
Перевод с помощью MS Excel следует воспользоваться функцией ДЕС.В.ВОСЬМ или DEC2OCT, если работа ведется в англоязычной версии офиса.
Перевод из десятичной системы в двоичную
- Делится десятичное число на 2. Частное от деления остается для следующего шага, а остаток от деления записывается как бит числа в двоичной системе счисления (справа на лево).
- Если частное не равно 0, то повторяется первый шаг, однако в качестве делимого берется уже частное. Новый остаток записывается в двоичное число справа на лево.
Процедура выполняется до тех пор пока частное не станет равно 0, а остаток от деления – 1.
Возьмем число 157.
157/2 = частное 78, остаток 1
78/2 = частное 39, остаток 0
39/2 = частное 19, остаток 1
19/2 = частное 9, остаток 1
9/2= частное 4, остаток 1
4/2 =частное 2, остаток 0
2/2 = частное 1, остаток 0
1/2 = частное 0, остаток 1
Итог: 10011101
Для осуществления перевода с помощью MS Excel следует воспользоваться функцией ДЕС.В.ДВ или DEC2BIN, если работа ведется в англоязычной версии офиса.
Перевод из десятичной системы в шестнадцатеричную
- Делится десятичное число на 16. Частное от деления остается для следующего шага, а остаток от деления записывается как бит числа в двоичной системе счисления (справа на лево).
- Если частное не равно 0, то повторяется первый шаг, однако в качестве делимого берется уже частное. Новый остаток записывается в шестнадцатеричное число справа на лево.
Процедура выполняется до тех пор пока частное не станет равно 0, а остаток от деления – меньше 16.
Не лишнем будет привести таблицу соответствия цифр в десятичной и шестнадцатеричной системе счисления:
Десятичная система | Шестнадцатеричная система |
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
9 | 9 |
10 | A |
11 | B |
12 | C |
13 | D |
14 | E |
15 | F |
Число 157 в шестнадцатеричной системе будет:
157/16 = частное 9 остаток 13
9/16 = частное 0 остаток 9
И ответ 9D (поскольку 13 соответствует D).
Для осуществления перевода с помощью MS Excel следует воспользоваться функцией ДЕС.В.ШЕСТН или DEC2HEX, для англоязычной версии офиса.
Перевод из шестнадцатеричной системы в восьмеричную
Для осуществления перевода с помощью MS Excel следует воспользоваться функцией ШЕСТН.В.ВОСЬМ или HEX2OCT, для англоязычной версии офиса.
Внимание! В формуле числа в шестнадцатеричной системе счисления следует записывать в кавычках, т.к. в противном случае число будет восприниматься как ссылка на ячейку.
Перевод из шестнадцатеричной системы в двоичную
Двоичная система | Шестнадцатеричная система |
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 |
Например, число 9D будет равно: 10011101.
Для осуществления перевода с помощью MS Excel следует воспользоваться функцией ШЕСТН.В.ДВ или HEX2BIN, для англоязычной версии офиса.
Внимание! В формуле числа в шестнадцатеричной системе счисления следует записывать в кавычках, т.к. в противном случае число будет восприниматься как ссылка на ячейку.
Перевод из шестнадцатеричной системы в десятичную
Десятичная система | Шестнадцатеричная система |
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
9 | 9 |
10 | A |
11 | B |
12 | C |
13 | D |
14 | E |
15 | F |
Перевод числа 9D равняется = 9*16 (в степени 1) + 13* 16 (в степени 0) = 9*16+13*1 = 157.
Для осуществления перевода с помощью MS Excel следует воспользоваться функцией ШЕСТН.В.ДЕС или HEX2DEC, для англоязычной версии офиса.