Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

Представление отрицательных чисел в компьютере

Определение 1

Представление отрицательных чисел в компьютере — это их выражение в виде дополнительного кода, который является самым применяемым для этих целей.

Введение

Замечание 1

Под дополнительным кодом понимается самый используемый метод задания отрицательных целых чисел в компьютерной среде. Этот код даёт возможность использовать операционную процедуру сложения вместо вычитания, что делает данные процедуры равноценными как для чисел, имеющих знак минус, так и для чисел, не имеющих знака.

Такая числовая организация позволяет сильно упростить структурное построение электронных вычислительных машин. В западных версиях обратный код принято обозначать первым дополнением, а дополнительный код обозначать как второе дополнение. Дополнительный код отрицательного числа возможно сформировать путём инверсии его модуля в двоичном коде с последующим добавлением к инвертированному значению единицы. Этот вариант обозначается как второе дополнение. Дополнительный код числа со знаком минус возможно также сформировать, если вычесть это число из нуля. То есть, дополнительный код числа в двоичном коде, может быть сформирован путём добавления единицы к младшему не нулевому разряду первого дополнения этого числа. Второе дополнение числа в двоичном коде формируется как кодовый набор, который получается при вычитании числа из самой большой степени двойки, то есть из два в степени N для второго дополнения числа, состоящего из N двоичных кодов.

Отрицательные числа в дополнительном коде

Когда число представляется в формате дополнительного кода, то старший разряд будет считаться определяющим знак. Когда этот разряд равняется нулю, то в остальных разрядах записывается значение, которое совпадает с его основным кодированием. Число, состоящее из восьми разрядов в двоичном коде и имеющее знак, возможно представить в дополнительном коде как некое целочисленное значение в зоне от −128 до +127. Когда старший разряд имеет нулевое значение, то наибольшим числовым значением, которое возможно записать в остальных семи позициях, будет: $2^7 – 1$.

Десятичные числа в дополнительном коде

Аналогичная методика применяется и для отображения десятичных чисел в электронных вычислительных машинах. Последовательно выполняется замена символа Х на 9 – Х, и результату добавляется единица. К примеру, если применяются числа из четырёх разрядов, то – 2272 нужно заменить на 7728, то есть 7728 + 2272 = 0000, пятый разряд отбрасывается при этом.

Перевод числа из прямого кода в дополнительный

«Представление отрицательных чисел в компьютере» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

Чтобы преобразовать число из прямого кода в дополнительный, нужно:

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

Например, необходимо выполнить преобразование отрицательного числа пять, представленного в прямом коде, в формат дополнительного кода. Основным кодом является двоичный код:

1000 0101

Далее необходимо выполнить инверсию числовых разрядов, за исключением знакового, что даёт в результате обратный код числа минус пять:

1111 1010

Осталось прибавить единицу, что даст искомый итоговый дополнительный код:

1111 1011

Достоинства и недостатки

К достоинствам следует отнести:

  1. Единый набор команд для выполнения арифметических операций и сдвига влево для числовых выражений, имеющих и не имеющих знак.
  2. Не существует цифра нуль с минусом.

К недостаткам относятся:

  1. Формат выражения отрицательных чисел не подпадает в визуальном смысле под общие правила.
  2. В отдельных форматах или их отдельных составляющих есть неудобства при кодировании.
  3. Самое большое число по модулю не равно самому маленькому числу.
Воспользуйся нейросетью от Автор24
Не понимаешь, как писать работу?
Попробовать ИИ
Дата написания статьи: 26.12.2019
Получи помощь с рефератом от ИИ-шки
ИИ ответит за 2 минуты
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot