Light-industry-up.ru

Экосистема промышленности

Обратный код

23-10-2023

Обратный код — метод вычислительной математики, позволяющий вычесть одно число из другого, используя только операцию сложения над натуральными числами. Ранее метод использовался в механических калькуляторах (арифмометрах). В настоящее время используется в основном в современных компьютерах.

Содержание

Описание

Обратный -разрядный двоичный код положительного целого числа состоит из одноразрядного кода знака (двоичной цифры 0), за которым следует -разрядное двоичное представление модуля числа (обратный код положительного числа совпадает с прямым кодом).

Пример. Двоичное представление числа 5 есть 101. Обратный 10-разрядный двоичный код числа +5 есть 0000000101.

Обратный -разрядный двоичный код отрицательного целого числа состоит из одноразрядного кода знака (двоичной цифры 1), за которым следует -разрядное двоичное число, представляющее собой инвертированное -разрядное представление модуля числа.

Пример. Двоичное представление числа 5 есть 101, его 10-разрядное двоичное представление — 0000000101. Обратный 10-разрядный двоичный код числа −5 есть 1111111010.

Имеются два обратных кода числа 0: «положительный нуль» 0000000000 и «отрицательный нуль» 1111111111 (приведены 10-разрядные обратные коды).

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

Двоичный пример

Метод дополнений в основном используется в двоичной системе счисления (с основанием 210), так как в двоичной системе счисления дополнение до 1 очень просто получается инверсией каждого бита (заменой '0' на '1' и наоборот) и добавлением единицы, дополнение до 2 может быть сделано симуляцией единицы переноса в младший значащий бит.[1] Например:
вычитание 10010 — 2210

  011001002  (x, равное десятичным 10010)
- 000101102  (y, равное десятичным 2210)

в методе дополнений становится суммой:

  011001002  (x)
+ 111010012  (первое дополнение y)
+        12  (чтобы получить второе дополнение)
==========
 1010011102

После отброса левой (старшей, начальной) «1» получается ответ: 010011102 (равное десятичным 7810).

См. также

Литература

  • Самофалов К.Г., Романкевич А.М., Валуйский В.Н., Каневский Ю.С., Пиневич М.М. Прикладная теория цифровых автоматов. — К.: Вища школа, 1987. — 375 с.

Ссылки

  1. http://matlab.exponenta.ru/fixedpoint/book1/1.php К. Г. Жуков «Справочное руководство пользователя Fixed-Point Blockset» 1.2. Понятие прямого, обратного и дополнительного кодов


Обратный код.

© 2014–2023 light-industry-up.ru, Россия, Краснодар, ул. Листопадная 53, +7 (861) 501-67-06