Калькулятор обратного кода и кода знак-модуль
Посмотрите, как знаковое целое число кодируется в коде знак-модуль, в обратном коде и в дополнительном коде при разрядности 8, 16 или 32 бита.
Bit width
Как работает этот калькулятор?
Введите знаковое целое число и разрядность, чтобы увидеть его представление в коде знак-модуль, в обратном коде и в дополнительном коде рядом. Для положительных чисел представления совпадают; для отрицательных — различаются. Код знак-модуль и обратный код имеют два нуля (+0 и -0), тогда как дополнительный код имеет единственный нуль, что делает его стандартом в современных компьютерах.
Формула
How this is calculated
Введите знаковое целое число v и выберите разрядность w (8, 16 или 32). Модуль |v| записывается в двоичном виде, после чего строится каждое из трёх классических знаковых представлений. Код знак-модуль использует старший бит как чистый бит знака (0 = положительный, 1 = отрицательный) и хранит |v| в оставшихся w-1 битах, поэтому представимое значение модуля находится в диапазоне от 0 до 2^(w-1) - 1.
Обратный код хранит положительные числа в обычном двоичном без знака и представляет отрицательное число путём инверсии всех битов |v| в w разрядах, что равно (2^w - 1) - |v|. Дополнительный код хранит положительные числа так же, но представляет отрицательное число как 2^w - |v| — ровно на единицу больше, чем паттерн обратного кода. Чтение паттерна дополнительного кода как беззнакового числа даёт 2^w - |v| для отрицательных чисел.
Важный граничный случай — нуль: код знак-модуль и обратный код допускают два различных битовых паттерна для нуля (+0 = все нули, -0 = бит знака / все единицы), тогда как дополнительный код имеет единственный нуль, что делает его предпочтительным выбором в современном оборудовании. Данный инструмент ограничивает |v| значением 2^(w-1) - 1, чтобы число вписывалось во все три представления; значения вне этого диапазона (включая наиболее отрицательное значение дополнительного кода -2^(w-1)) сообщаются как выходящие за пределы диапазона.
Часто задаваемые вопросы
Для неотрицательных значений код знак-модуль, обратный код и дополнительный код хранят обычное двоичное беззнаковое представление числа с ведущим нулевым битом знака, поэтому паттерны совпадают. Они расходятся только для отрицательных значений.
Обе схемы могут представлять +0 (все нули) и -0 (установлен бит знака или все единицы в обратном коде). Наличие двух представлений нуля усложняет сравнения и арифметику — это одна из причин, по которой предпочтителен дополнительный код с его единственным нулём.
Дополнительный код может хранить -2^(w-1), но код знак-модуль и обратный код — нет, поскольку их поле модуля вмещает не более 2^(w-1) - 1. Чтобы все три представления были сопоставимы, данный калькулятор ограничивает |v| значением 2^(w-1) - 1.
Также известен как
TG we-Calculate Editorial Team. (2026). Калькулятор обратного кода и кода знак-модуль [Online calculator]. TG we-Calculate. https://we-calculate.com/ru/calculator/ones-complement-sign-magnitude-calculator
TG we-Calculate Editorial Team. "Калькулятор обратного кода и кода знак-модуль." TG we-Calculate. 2026. https://we-calculate.com/ru/calculator/ones-complement-sign-magnitude-calculator.
TG we-Calculate Editorial Team, "Калькулятор обратного кода и кода знак-модуль," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/ru/calculator/ones-complement-sign-magnitude-calculator
@misc{wecalculate_ones_complement_sign_magnitude_calculator, title = {Калькулятор обратного кода и кода знак-модуль}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/ru/calculator/ones-complement-sign-magnitude-calculator}}, year = {2026}, note = {TG we-Calculate} }
Этот калькулятор вам помог?
