Как перевести шестнадцатиричную систему в десятичную

Перевод чисел в различные системы счисления с решением

Исходное число записано в -ой системе счисления.

Хочу получить запись числа в -ой системе счисления.

Системы счисления

Системы счисления делятся на два типа: позиционные и не позиционные. Мы пользуемся арабской системой, она является позиционной, а есть ещё римская − она как раз не позиционная. В позиционных системах положение цифры в числе однозначно определяет значение этого числа. Это легко понять, рассмотрев на примере какого-нибудь числа.

Пример 1. Возьмём число 5921 в десятичной системе счисления. Пронумеруем число справа налево начиная с нуля:

Число:5921
Позиция:3210

Пример 2. Рассмотрим вещественное десятичное число 1234.567. Пронумеруем его начиная с нулевой позиции числа от десятичной точки влево и вправо:

Число:1234567
Позиция:3210-1-2-3

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

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

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

Для перевода числа из любой системы счисления в десятичную достаточно пронумеровать его разряды, начиная с нулевого (разряд слева от десятичной точки) аналогично примерам 1 или 2. Найдём сумму произведений цифр числа на основание системы счисления в степени позиции этой цифры:

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

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

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

Целая часть переводится из десятичной системы счисления в другую систему счисления с помощью последовательного деления целой части числа на основание системы счисления до получения целого остатка, меньшего основания системы счисления. Результатом перевода будет являться запись из остатков, начиная с последнего.

Рассмотрим перевод правильных десятичных дробей в различные системы счисления.

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

Напомним, правильной десятичной дробью называется вещественное число с нулевой целой частью. Чтобы перевести такое число в систему счисления с основанием N нужно последовательно умножать число на N до тех пор, пока дробная часть не обнулится или же не будет получено требуемое количество разрядов. Если при умножении получается число с целой частью, отличное от нуля, то целая часть дальше не учитывается, так как последовательно заносится в результат.

Programforyou — это сообщество, в котором Вы можете подтянуть свои знания по программированию, узнать, как эффективно решать те или иные задачи, а также воспользоваться нашими онлайн сервисами.

Источник

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

Перед тем как перейти к алгоритму перевода, вспомним алфавит шестнадцатеричной и десятичной системы счисления:

ОснованиеНазваниеАлфавит
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 : перевести десятичное число 12349 в шестнадцатеричную систему счисления

Для наглядности произведем деление «столбиком». Решение будет выглядеть следующим образом:

Как перевести шестнадцатиричную систему в десятичную

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

Алгоритм перевода десятичной дроби в шестнадцатеричную систему

Пример 2: перевести число 0,7715 в шестнадцатеричную систему.

Решение будет выглядеть следующим образом:

0.7715 ∙ 16 = 12.344 (C)
0.344 ∙ 16 = 5.504 (5)
0.504 ∙ 16 = 8.064 (8)
0.064 ∙ 16 = 1.024 (1)
0.024 ∙ 16 = 0.384 (0)
0.384 ∙ 16 = 6.144 (6)
0.144 ∙ 16 = 2.304 (2)
0.304 ∙ 16 = 4.864 (4)
0.864 ∙ 16 = 13.824 (D)
0.824 ∙ 16 = 13.184 (D)
0.184 ∙ 16 = 2.944 (2)

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

Перевод дробного десятичного числа в шестнадцатеричную систему

Для того чтобы перевести десятичное число, содержащее дробную часть, необходимо отдельно перевести целую часть и отдельно дробную.

Пример 3: перевести число 10415,136 из десятичной системы в шестнадцатеричную

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

Как перевести шестнадцатиричную систему в десятичную

Перевод десятичной дроби 0,136 выглядит так:

0.136 ∙ 16 = 2.176 (2)
0.176 ∙ 16 = 2.816 (2)
0.816 ∙ 16 = 13.056 (D)
0.056 ∙ 16 = 0.896 (0)
0.896 ∙ 16 = 14.336 (E)
0.336 ∙ 16 = 5.376 (5)
0.376 ∙ 16 = 6.016 (6)
0.016 ∙ 16 = 0.256 (0)
0.256 ∙ 16 = 4.096 (4)
0.096 ∙ 16 = 1.536 (1)
0.536 ∙ 16 = 8.576 (8)

Теперь осталось соединить результаты перевода. Таким образом: 10415.13610=28AF.22D0E56041816

Источник

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

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