Домашние задания: Другие предметы

Перевести число 312 из десятичной в 16ричную систему с решением

Ю*
Юлия *****
328
Вручную, алгоритм:

Для перевода чисел из десятичной системы счисления в шестнадцатеричную используют тот же "алгоритм замещения", что и при переводе из десятичной системы счисления в двоичную и восьмеричную, только в качестве делителя используют 16, основание шестнадцатеричной системы счисления:

1. Делим десятичное число А на 16. Частное Q запоминаем для следующего шага, а остаток a записываем как младший бит шестнадцатеричного числа.
2. Если частное q не равно 0, принимаем его за новое делимое и повторяем процедуру, описанную в шаге 1. Каждый новый остаток записывается в разряды шестнадцатеричного числа в направлении от младшего бита к старшему.
3. Алгоритм продолжается до тех пор, пока в результате выполнения шагов 1 и 2 не получится частное Q = 0 и остаток a меньше 16.

Например, требуется перевести десятичное число 32767 в шестнадцатеричное. В соответствии с приведенным алгоритмом получим:
3276710 : 16 = 204710
3276710 - 3275210 = 15, остаток 15 в виде F записываем в МБ шестнадцатеричного числа.
204710 : 16 = 12710
204710 - 203210 = 15, остаток 15 в виде F записываем в следующий после МБ разряд шестнадцатеричного числа.
12710 : 16 = 710
12710 - 11210 = 15, остаток 15 в виде F записываем в старший разряд шестнадцатеричного числа.
710 : 16 = 010, остаток 7 записываем в старший разряд шестнадцатеричного числа.

Таким образом, искомое шестнадцатеричное число равно 7FFF16.

И еще.. .
Если есть реальная необходимость в переводи именно этого числа, то можно самостоятельно написать программу преобразования с поддержкой экстра-больших чисел (например на Паскале, алгоритм можно найти, [ссылка появится после проверки модератором] )
ВК
Василий Казаченко
9 266
Лучший ответ
открываешь методику перевода и переводишь. не ленись

Похожие вопросы