Перевод чисел из одной системы счисления в другую

Исходное число
Система счисления исходного числа
Перевести число в

Данный конвертер переводит числа между наиболее популярными системами счисления: десятичной, двоичной, восьмеричной, шестнадцатеричной.

Система счисления - это способ представления числа. Одно и то же число может быть представлено в различных видах. Например, число 200 в привычной нам десятичной системе может иметь вид 11001000 в двоичной системе, 310 в восьмеричной и C8 в шестнадцатеричной.

Существуют и другие системы счисления, но мы не стали включать их в конвертер из-за низкой популярности.

Для указания системы счисления при записи числа используется нижний индекс, который ставится после числа:
20010 = 110010002 = 3108 = C816

Кратко об основных системах счисления

Десятичная система счисления. Используется в повседневной жизни и является самой распространенной. Все числа, которые нас окружают представлены в этой системе. В каждом разряде такого числа может использоваться только одна цифра от 0 до 9.

Двоичная система счисления. Используется в вычислительной технике. Для записи числа используются цифры 0 и 1.

Восьмеричная система счисления. Также иногда применяется в цифровой технике. Для записи числа используются цифры от 0 до 7.

Шестнадцатеричная система счисления. Наиболее распространена в современных компьютерах. При помощи неё, например, указывают цвет. #FF0000 - красный цвет. Для записи числа используются цифры от 0 до 9 и буквы A,B,C,D,E,F, которые соответственно обозначают числа 10,11,12,13,14,15.

Перевод в десятичную систему счисления

Преобразовать число из любой системы счисления в десятичную можно следующим образом: каждый разряд числа необходимо умножить на Xn, где X - основание исходного числа, n - номер разряда. Затем суммировать полученные значения.

abcx = (a*x2 + b*x1 + c*x0)10

Примеры:
5678 = (5*82 + 6*81 + 7*80)10 = 37510
1102 = (1*22 + 1*21 + 0*20)10 = 610
A516 = (10*161 + 5*160)10 = 16510

Перевод из десятичной системы счисления в другие

Делим десятичное число на основание системы, в которую хотим перевести и записываем остатки от деления. Запишем полученные остатки в обратном порядке и получим искомое число.

Переведем число 37510 в восьмеричную систему:

375 / 8 = 46 (остаток 7)
46 / 8 = 5 (остаток 6)
5 / 8 = 0 (остаток 5)
Записываем остатки и получаем 5678

Перевод из двоичной системы в восьмеричную

Способ 1:

Для перевода в восьмеричную систему нужно разбить двоичное число на группы по 3 цифры справа налево. В последней (самой левой) группе вместо недостающих цифр поставить слева нули. Для каждой полученной группы произвести умножение каждого разряда на 2n, где n - номер разряда.

11012 = (001) (101) = (0*22 + 0*21 + 1*20) (1*22 + 0*21 + 1*20) = (0+0+1) (4+0+1) = (1) (5) = 158

Способ 2:

Так же как и в первом способе разбиваем число на группы. Но вместо преобразований в скобках просто заменим полученные группы (триады) на соответствующие цифры восьмеричной системы, используя таблицу триад:

Триада 000 001 010 011 100 101 110 111
Цифра 0 1 2 3 4 5 6 7
101110102 = (010) (111) (010) = 2728

Перевод из двоичной системы в шестнадцатеричную

Способ 1:

Разбиваем число на группы по 4 цифры справа налево. Последнюю (левую) группу дополним при необходимости ведущими нулями. Внутри каждой полученной группы произведем умножение каждой цифры на 2n, где n - номер разряда, и сложим результаты.

110102 = (0001) (1010) = (0*23 + 0*22 + 0*21 + 1*20) (1*23 + 0*22 + 1*21 + 0*20) = (0+0+0+1) (8+0+2+0) = (1) (10) = 1A16

Способ 2:

Также как и в первом способе разбиваем число на группы по 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
1011111002 = (0001) (0111) (1100) = 17C16

Перевод из восьмеричной системы в двоичную

Способ 1:

Каждый разряд восьмеричного числа будем делить на 2 и записывать остатки в обратном порядке, формируя группы по 3 разряда двоичного числа. Если в группе получилось меньше 3 разрядов, тогда дополняем нулями. Записываем все группы по порядку, отбрасываем ведущие нули, если имеются, и получаем двоичное число.

Возьмем число 438.
Делим последовательно 4 на 2 и получаем остатки 0,0,1. Записываем их в обратном порядке. Получаем 100.
Делим последовательно 3 на 2 и получаем остатки 1,1. Записываем их в обратном порядке и дополняем ведущими нулями до трех разрядов. Получаем 011.
Записываем вместе и получаем 1000112

Способ 2:

Используем таблицу триад:

Цифра 0 1 2 3 4 5 6 7
Триада 000 001 010 011 100 101 110 111

Каждую цифру исходного восьмеричного числа заменяется на соответствующие триады. Ведущие нули самой первой триады отбрасываются.

3518 = (011) (101) (001) = 0111010012 = 111010012

Перевод из шестнадцатеричной системы в двоичную

Способ 1:

Аналогично переводу из восьмеричной в двоичную, только группы по 4 разряда.

Способ 2:

Используем таблицу тетрад:

Цифра 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

Каждую цифру исходного числа заменяется на соответствующие тетрады. Ведущие нули самой первой тетрады отбрасываются.

D816 = (1101) (1000) = 110110002

Перевод из восьмеричной системы в шестнадцатеричную и наоборот

Такую конвертацию можно осуществить через промежуточное десятичное или двоичное число. То есть исходное число сначала перевести в десятичное (или двоичное), и затем полученный результат перевести в конечную систему счисления.