Какое десятичное число соответствует прямому двоичному коду 1'0000111?
Подробное объяснение
Дан прямой двоичный код 1'0000111, где первый бит указывает знак числа: 1 означает отрицательное число, а 0 — положительное. Оставшиеся биты 0000111 представляют модуль числа. Переводим модуль в десятичную систему: 0000111_2 = 4 + 2 + 1 = 7. Таким образом, число равно -7.
Часто задаваемые вопросы (FAQ)
1
Что такое прямой двоичный код?
Прямой двоичный код (sign-magnitude) — это способ представления чисел со знаком, где старший бит отвечает за знак (0 — плюс, 1 — минус), а остальные биты — за модуль числа.
2
Как перевести прямой двоичный код в десятичное число?
Сначала определите знак по старшему биту (0 — положительное, 1 — отрицательное). Затем переведите оставшиеся биты в десятичное число, используя степени двойки. Результат умножьте на знак.
3
Чем прямой код отличается от дополнительного?
В прямом коде знак и модуль хранятся отдельно, что приводит к двум представлениям нуля. В дополнительном коде отрицательные числа представляются как дополнение до 2^n, что упрощает сложение.
Типичные ошибки
1
Игнорирование знакового бита и перевод всего кода как положительного числа
Нужно учитывать, что первый бит обозначает знак, иначе результат будет неверным (например, 1'0000111 может ошибочно принять за 135).
2
Ошибочный перевод двоичного числа: неправильное возведение в степень
При переводе модуля 0000111 важно помнить, что степени двойки считаются справа налево, начиная с 0. Ошибка в позиции приведет к неверному десятичному значению.
3
Путаница между прямым и дополнительным кодом
Некоторые могут попытаться инвертировать биты или прибавить единицу, что характерно для дополнительного кода, но не для прямого.