Задать вопрос
@LevSvl08

Как выполнить перевод 8-ми битного отрицательного числа из десятичной системы счисления в шестнадцатиричную?

Есть задание, прошу дать мне алгоритм, как выполняется подобный перевод и обратный. Больше пожалуй даже обратный интересует.
Даны 5 однобайтовых чисел со знаком. Запишите их в
шестнадцатеричной системе счисления в дополнительном коде:
0, 1, -3, -128, 65
  • Вопрос задан
  • 276 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
mayton2019
@mayton2019
Bigdata Engineer
Вот из википедии. Как из положительного сделать отрицательное в формате ДК (дополнительный код).

int twos_compl_abs(int a) {
    if (a < 0) a = (~a) + 1;
    return a;
}


Инвертируем и добавляем единичку.

Для числа -100. Берем сначала по модулю. 100 - это 64 + 32 + 4

0110 0100

Инвертируем

1001 1011

И прибавляем 1

1001 1100

В хекс-системе тоже число будет

9C
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@LevSvl08 Автор вопроса
P.s Из в двоичную систему и наоборот, я понимаю, как это делается
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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