как перевести двоичный код в шестнадцатиричный
Как перевести число из двоичной системы в восьмеричную и шестнадцатеричную
Перевод чисел из двоичной системы счисления в восьмеричную, шестнадцатеричную или четвертичную и наоборот часто требуется для решения задач по теме Системы счисления. Чтобы перевести число из одной системы в другую, нужно использовать таблицу перевода чисел.
Таблица перевода чисел
Десятичная СС | Двоичная СС | Четвертичная СС | Восьмеричная СС | Шестнадцатеричная СС |
---|---|---|---|---|
1 | 1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 | 2 |
3 | 11 | 3 | 3 | 3 |
4 | 100 | 10 | 4 | 4 |
5 | 101 | 11 | 5 | 5 |
6 | 110 | 12 | 6 | 6 |
7 | 111 | 13 | 7 | 7 |
8 | 1000 | 20 | 10 | 8 |
9 | 1001 | 21 | 11 | 9 |
10 | 1010 | 22 | 12 | A |
11 | 1011 | 23 | 13 | B |
12 | 1100 | 30 | 14 | C |
13 | 1101 | 31 | 15 | D |
14 | 1110 | 32 | 16 | E |
15 | 1111 | 33 | 17 | F |
16 | 10000 | 100 | 20 | 10 |
Как перевести число из двоичной системы счисления
Чтобы перевести число из двоичной системы счисления в четвертичную, восьмеричную или шестнадцатеричную систему, нужно воспользоваться алгоритмом перевода:
Как перевести число в двоичную систему счисления
Чтобы перевести число из четвертичной, восьмеричной или шестнадцатеричной системы счисления в двоичную, нужно воспользоваться алгоритмом перевода:
Перевод из двоичной системы счисления в шестнадцатеричной
Для перевода чисел из двоичной системы в шестнадцатеричную, воспользуемся соответствующим алгоритмом. Важно заметить, что алгоритм перевода целых и дробных чисел будет отличаться.
Алгоритм перевода двоичных чисел в шестнадцатеричную систему счисления
Подробно о переводе из двоичной в десятичную систему смотрите на этой странице, о переводе из десятичной в шестнадцатеричную — на смотрите здесь. Для целостного понимания, разберем несколько примеров, но для начала вспомним алфавиты двоичной, десятичной и шестнадцатеричной систем счисления:
Основание | Название | Алфавит |
---|---|---|
2 | Двоичная | 0, 1 |
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 |
Перевод целого двоичного числа в шестнадцатеричную систему счисления
Пример 1: перевести 1011101 из двоичной системы в шестнадцатеричную.
Как было сказано выше, необходимо сначала перевести число в десятичное, а полученный ответ в шестнадцатеричную. Решение будет выглядеть следующим образом:
Для перевода двоичного числа 1011101 в десятичную систему, воспользуемся формулой:
10111012=1 ∙ 2 6 + 0 ∙ 2 5 + 1 ∙ 2 4 + 1 ∙ 2 3 + 1 ∙ 2 2 + 0 ∙ 2 1 + 1 ∙ 2 0 = 1 ∙ 64 + 0 ∙ 32 + 1 ∙ 16 + 1 ∙ 8 + 1 ∙ 4 + 0 ∙ 2 + 1 ∙ 1 = 64 + 0 + 16 + 8 + 4 + 0 + 1 = 9310
Полученное число 93 переведем из десятичной системы счисления в шестнадцатеричную. Для этого, осуществим последовательное деление на 16, до тех пор пока остаток не будет меньше чем 16.
Полученные остатки записываем в обратном порядке, таким образом:
Перевод дробного двоичного числа в шестнадцатеричную систему счисления
Пример 2: перевести 10001100.110 из двоичной в шестнадцатеричную систему счисления.
Общий смысл алгоритма перевода дробного числа, аналогичен алгоритму перевода целого, т.е. вначале переводим в десятичную, а затем в шестнадцатеричную:
1. Для перевода числа 10001100.110 в десятичную систему воспользуемся формулой:
Обратите внимание! Формула перевода дробного числа в десятичную систему, очень похожа на формулу перевода целого, однако немного отличается.
2. Полученное число 140.75 переведем из десятичной системы счисления в шестнадцатеричную. Для этого потребуется перевести вначале целую часть, а затем дробную. Таким образом необходимо:
2.1 Для того, чтобы перевести число 140 из десятичной системы счисления в шестнадцатеричную, необходимо осуществить последовательное деление на 16, до тех пор пока остаток не будет меньше 16-ти.
Полученные остатки записываем в обратном порядке, таким образом:
2.2 Для перевода десятичной дроби 0.75 в шестнадцатеричную систему, необходимо выполнить последовательное умножение дроби на 16, до тех пор, пока дробная часть не станет равной 0 или пока не будет достигнута заданная точность вычисления. Получаем:
Т.к. дробная часть 0, продолжать умножение не нужно. Ответом станет 0.12 (0.С). Т.е.
2.3. Осталось соединить переведенные части, таким образом:
Перевод чисел из одной системы счисления в другую
Данный конвертер переводит числа между наиболее популярными системами счисления: десятичной, двоичной, восьмеричной, шестнадцатеричной.
Существуют и другие системы счисления, но мы не стали включать их в конвертер из-за низкой популярности.
Для указания системы счисления при записи числа используется нижний индекс, который ставится после числа:
20010 = 110010002 = 3108 = C816
Кратко об основных системах счисления
Десятичная система счисления. Используется в повседневной жизни и является самой распространенной. Все числа, которые нас окружают представлены в этой системе. В каждом разряде такого числа может использоваться только одна цифра от 0 до 9.
Двоичная система счисления. Используется в вычислительной технике. Для записи числа используются цифры 0 и 1.
Восьмеричная система счисления. Также иногда применяется в цифровой технике. Для записи числа используются цифры от 0 до 7.
Перевод в десятичную систему счисления
Перевод из десятичной системы счисления в другие
Делим десятичное число на основание системы, в которую хотим перевести и записываем остатки от деления. Запишем полученные остатки в обратном порядке и получим искомое число.
Переведем число 37510 в восьмеричную систему:
Перевод из двоичной системы в восьмеричную
Так же как и в первом способе разбиваем число на группы. Но вместо преобразований в скобках просто заменим полученные группы (триады) на соответствующие цифры восьмеричной системы, используя таблицу триад:
Перевод из двоичной системы в шестнадцатеричную
Также как и в первом способе разбиваем число на группы по 4 цифры. Заменим полученные группы (тетрады) на соответствующие цифры шестнадцатеричной системы, используя таблицу тетрад:
Тетрада | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Цифра | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
Перевод из восьмеричной системы в двоичную
Каждый разряд восьмеричного числа будем делить на 2 и записывать остатки в обратном порядке, формируя группы по 3 разряда двоичного числа. Если в группе получилось меньше 3 разрядов, тогда дополняем нулями. Записываем все группы по порядку, отбрасываем ведущие нули, если имеются, и получаем двоичное число.
Используем таблицу триад:
Каждую цифру исходного восьмеричного числа заменяется на соответствующие триады. Ведущие нули самой первой триады отбрасываются.
Перевод из шестнадцатеричной системы в двоичную
Аналогично переводу из восьмеричной в двоичную, только группы по 4 разряда.
Используем таблицу тетрад:
Цифра | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Тетрада | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
Каждую цифру исходного числа заменяется на соответствующие тетрады. Ведущие нули самой первой тетрады отбрасываются.
Перевод из восьмеричной системы в шестнадцатеричную и наоборот
Такую конвертацию можно осуществить через промежуточное десятичное или двоичное число. То есть исходное число сначала перевести в десятичное (или двоичное), и затем полученный результат перевести в конечную систему счисления.
Перевод чисел в двоичную, шестнадцатеричную, десятичную, восьмеричную системы счисления
Способы представления чисел
Алгоритм перевода чисел из одной системы счисления в другую
Для перевода числа из двоичной системы счисления в восьмиричную (шестнадцатиричную) необходимо от запятой вправо и влево разбить двоичное число на группы по три (четыре – для шестнадцатиричной) разряда, дополняя при необходимости нулями крайние группы. Каждую группу заменяют соответствующей восьмиричной или шестнадцатиричной цифрой.
Таблица для перевода в восьмеричную систему счисления
Двоичная СС | Восьмеричная СС |
000 | 0 |
001 | 1 |
010 | 2 |
011 | 3 |
100 | 4 |
101 | 5 |
110 | 6 |
111 | 7 |
Остаток от деления записываем в обратном порядке. Получаем число в 8-ой системе счисления: 144
100 = 1448
Для перевода дробной части числа последовательно умножаем дробную часть на основание 8. В результате каждый раз записываем целую часть произведения.
0.12*8 = 0.96 (целая часть 0 )
0.96*8 = 7.68 (целая часть 7 )
0.68*8 = 5.44 (целая часть 5 )
0.44*8 = 3.52 (целая часть 3 )
Получаем число в 8-ой системе счисления: 0753.
0.12 = 0.7538
2 Этап. Перевод числа из десятичной системы счисления в восьмеричную систему счисления.
Обратный перевод из восьмеричной системы счислений в десятичную.
Для перевода целой части необходимо умножить разряд числа на соответствующую ему степень разряда.
144 = 8 2 *1 + 8 1 *4 + 8 0 *4 = 64 + 32 + 4 = 100
Системы счисления. Перевод из одной системы в другую.
1. Порядковый счет в различных системах счисления.
В современной жизни мы используем позиционные системы счисления, то есть системы, в которых число, обозначаемое цифрой, зависит от положения цифры в записи числа. Поэтому в дальнейшем мы будем говорить только о них, опуская термин «позиционные».
Для того чтобы научиться переводить числа из одной системы в другую, поймем, как происходит последовательная запись чисел на примере десятичной системы.
Поскольку у нас десятичная система счисления, мы имеем 10 символов (цифр) для построения чисел. Начинаем порядковый счет: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Цифры закончились. Мы увеличиваем разрядность числа и обнуляем младший разряд: 10. Затем опять увеличиваем младший разряд, пока не закончатся все цифры: 11, 12, 13, 14, 15, 16, 17, 18, 19. Увеличиваем старший разряд на 1 и обнуляем младший: 20. Когда мы используем все цифры для обоих разрядов (получим число 99), опять увеличиваем разрядность числа и обнуляем имеющиеся разряды: 100. И так далее.
Попробуем сделать то же самое в 2-ной, 3-ной и 5-ной системах (введем обозначение для 2-ной системы, для 3-ной и т.д.):
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 10 | 3 |
4 | 100 | 11 | 4 |
5 | 101 | 12 | 10 |
6 | 110 | 20 | 11 |
7 | 111 | 21 | 12 |
8 | 1000 | 22 | 13 |
9 | 1001 | 100 | 14 |
10 | 1010 | 101 | 20 |
11 | 1011 | 102 | 21 |
12 | 1100 | 110 | 22 |
13 | 1101 | 111 | 23 |
14 | 1110 | 112 | 24 |
15 | 1111 | 120 | 30 |
Если система счисления имеет основание больше 10, то нам придется вводить дополнительные символы, принято вводить буквы латинского алфавита. Например, для 12-ричной системы кроме десяти цифр нам понадобятся две буквы ( и ):
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
9 | 9 |
10 | |
11 | |
12 | 10 |
13 | 11 |
14 | 12 |
15 | 13 |
2.Перевод из десятичной системы счисления в любую другую.
Чтобы перевести целое положительное десятичное число в систему счисления с другим основанием, нужно это число разделить на основание. Полученное частное снова разделить на основание, и дальше до тех пор, пока частное не окажется меньше основания. В результате записать в одну строку последнее частное и все остатки, начиная с последнего.
Пример 1. Переведем десятичное число 46 в двоичную систему счисления.
Пример 2. Переведем десятичное число 672 в восьмеричную систему счисления.
Пример 3. Переведем десятичное число 934 в шестнадцатеричную систему счисления.
3. Перевод из любой системы счисления в десятичную.
Для того, чтобы научиться переводить числа из любой другой системы в десятичную, проанализируем привычную нам запись десятичного числа.
Например, десятичное число 325 – это 5 единиц, 2 десятка и 3 сотни, т.е.
Точно так же обстоит дело и в других системах счисления, только умножать будем не на 10, 100 и пр., а на степени основания системы счисления. Для примера возьмем число 1201 в троичной системе счисления. Пронумеруем разряды справа налево начиная с нуля и представим наше число как сумму произведений цифры на тройку в степени разряда числа:
Это и есть десятичная запись нашего числа, т.е.
Пример 4. Переведем в десятичную систему счисления восьмеричное число 511.
Пример 5. Переведем в десятичную систему счисления шестнадцатеричное число 1151.
4. Перевод из двоичной системы в систему с основанием «степень двойки» (4, 8, 16 и т.д.).
Для преобразования двоичного числа в число с основанием «степень двойки» необходимо двоичную последовательность разбить на группы по количеству цифр равному степени справа налево и каждую группу заменить соответствующей цифрой новой системы счисления.
Например, Переведем двоичное 1100001111010110 число в восьмеричную систему. Для этого разобьем его на группы по 3 символа начиная справа (т.к. ), а затем воспользуемся таблицей соответствия и заменим каждую группу на новую цифру:
Таблицу соответствия мы научились строить в п.1.
0 | 0 |
1 | 1 |
10 | 2 |
11 | 3 |
100 | 4 |
101 | 5 |
110 | 6 |
111 | 7 |
Пример 6. Переведем двоичное 1100001111010110 число в шестнадцатеричную систему.
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 |
5.Перевод из системы с основанием «степень двойки» (4, 8, 16 и т.д.) в двоичную.
Этот перевод аналогичен предыдущему, выполненному в обратную сторону: каждую цифру мы заменяем группой цифр в двоичной системе из таблицы соответствия.
Пример 7. Переведем шестнадцатеричное число С3A6 в двоичную систему счисления.
Для этого каждую цифру числа заменим группой из 4 цифр (т.к. ) из таблицы соответствия, дополнив при необходимости группу нулями вначале: