обратный код числа 101010112 в однобайтовом формате равен

Обратный и дополнительный коды двоичных чисел

обратный код числа 101010112 в однобайтовом формате равенобратный код числа 101010112 в однобайтовом формате равен обратный код числа 101010112 в однобайтовом формате равенобратный код числа 101010112 в однобайтовом формате равен обратный код числа 101010112 в однобайтовом формате равен обратный код числа 101010112 в однобайтовом формате равенобратный код числа 101010112 в однобайтовом формате равен

Пример перевода
x1=10101-[x1]пр=010101
x2=-11101-[x2]пр=111101
x3=0,101-[x3]пр=0,101
x4=-0,111-[x4]пр=1,111
2) Обратный код числа, используется для выполнения арифметических операций вычитания, умножения, деления, через сложение. Обратный код положительного числа совпадает с его прямым кодом, обратный код отрицательного числа формируется по правилам: в знаковом разряде записывается “1”; цифровые значения меняются на противоположные.

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

Пример перевода
x1=10101-[x1]доп=010101
x2=-11101-[x2]обр=100010+1-[x2]доп=100011
x3=0,101-[x3]доп=0,101
x4=-0,111-[x4]обр=1,000+1-[x4]доп=1,001
Для выявления ошибок при выполнении арифметических операций используются также модифицированные коды: модифицированный прямой; модифицированный обратный; модифицированный дополнительный, для которых под код знака числа отводится два разряда, т.е. “+”=00; ”-”=11. Если в результате выполнения операции в знаковом разряде появляется комбинация 10 или 01 то для машины это признак ошибки, если 00 или 11 то результат верный.

Источник

Прямой, обратный и дополнительный коды

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

Для представления чисел со знаком в ЭВМ применяют прямой, обратный и дополнительный коды.

Общая идея построения кодов такова. Код трактуется как число без знака, а диапазон представляемых кодами чисел без знака разбивается на два поддиапазона. Один из них представляет положительные числа, другой – отрицательные. Разбиение выполняется таким образом, чтобы принадлежность к поддиапазону определялась максимально просто.

Наиболее распространенным и удобным является формирование кодов таким образом, чтобы значение старшего разряда указывало на знак представляемых чисел, т.е. использование такого кодирования позволяет говорить о старшем разряде как о знаковом (бит знака) и об остальных как о цифровых разрядах кода.

Прямой код

Это обычный двоичный код, рассмотренный в разделе двоичной системы счисления. Если двоичное число является положительным, то бит знака равен 0, если двоичное число отрицательное, то бит знака равен 1. Цифровые разряды прямого кода содержат модуль представляемого числа, что обеспечивает наглядность представления чисел в прямом коде (ПК).

Рассмотрим однобайтовое представление двоичного числа. Пусть это будет 28(10). В двоичном формате – 0011100(2) (при однобайтовом формате под величину числа отведено 7 разрядов). Двоичное число со знаком будет выглядеть так, как показано на рис. 2.1.

обратный код числа 101010112 в однобайтовом формате равен

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

Обратный код

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

На рис. 2.2 приведен формат однобайтового двоичного числа в обратном коде.

обратный код числа 101010112 в однобайтовом формате равен

В общем случае ОК является дополнением модуля исходного числа до наибольшего числа без знака, помещенного в разрядную сетку.

Кроме того, в операциях сложения и вычитания требуется дополнительная операция по прибавлению бита переноса в младший разряд суммы. Рассмотрим правила алгебраического сложения в ОК (поскольку А-В=А+(-В)). Алгоритм сложения в ОК содержит:

· сложение кодов, включая знаковый разряд;

· прибавление переноса к МЗР (младшему значащему разряду) суммы.

обратный код числа 101010112 в однобайтовом формате равен

обратный код числа 101010112 в однобайтовом формате равен

Указанные трудности привели к тому, что в современных ЭВМ абсолютное большинство операций выполняется в дополнительном коде.

Дополнительный код

Дополнительный код (ДК) строится следующим образом. Сначала формируется обратный код (ОК), а затем к младшему разряду (МЗР) добавляют 1. При выполнении арифметических операций положительные числа представляются в прямом коде (ПК), а отрицательные числа – в ДК, причем обратный перевод ДК в ПК осуществляется аналогичными операциями в той же последовательности. На рис. 2.3 рассмотрена цепь преобразований числа из ПК в ДК и обратно в двух вариантах.

обратный код числа 101010112 в однобайтовом формате равен

обратный код числа 101010112 в однобайтовом формате равен

обратный код числа 101010112 в однобайтовом формате равен

Оба способа представления чисел широко используются в ЭВМ.

Представление десятичных чисел одним полубайтом

В ЭВМ используется быстрый способ формирования ДК. При этом двоичное число просматривается от МЗР к СЗР. Пока встречаются нули, их копируют в разряды результата. Первая встретившаяся единица также копируется в соответствующий разряд, а каждый последующий бит исходного числа заменяется на противоположный (0 на 1, 1 на 0).

обратный код числа 101010112 в однобайтовом формате равен

обратный код числа 101010112 в однобайтовом формате равен

Видно, что результаты преобразований обоими методами совпадают.

Источник

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

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

обратный код числа 101010112 в однобайтовом формате равен
Мы знаем, что десятичное число можно представить в двоичном виде. К примеру, десятичное число 100 в двоичном виде будет равно 1100100, или в восьмибитном представлении 0110 0100. А как представить отрицательное десятичное число в двоичном виде и произвести с ним арифметические операции? Для этого и предназначены разные способы представления чисел в двоичном коде.
Сразу отмечу, что положительные числа в двоичном коде вне зависимости от способа представления (прямой, обратный или дополнительный коды) имеют одинаковый вид.

Прямой код

обратный код числа 101010112 в однобайтовом формате равен

Обратный код

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

обратный код числа 101010112 в однобайтовом формате равен

Арифметические операции с отрицательными числами в обратном коде:

Дополнительный код

В дополнительном коде (как и в прямом и обратном) старший разряд отводится для представления знака числа (знаковый бит).

обратный код числа 101010112 в однобайтовом формате равен

обратный код числа 101010112 в однобайтовом формате равен

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

Вывод:
1. Для арифметических операций сложения и вычитания положительных двоичных чисел наиболее подходит применение прямого кода
2. Для арифметических операций сложения и вычитания отрицательных двоичных чисел наиболее подходит применение дополнительного кода

обратный код числа 101010112 в однобайтовом формате равенобратный код числа 101010112 в однобайтовом формате равенобратный код числа 101010112 в однобайтовом формате равенобратный код числа 101010112 в однобайтовом формате равен обратный код числа 101010112 в однобайтовом формате равен(34 голосов, оценка: 4,68 из 5)

Источник

Прямой, дополнительный и обратный коды

Прямой, дополнительный и обратный код числа (создан по запросу).

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

Обновление: Из комментариев становится ясно, что люди не вполне понимают, что делает этот калькулятор. Точнее, что делал — применял алгоритм вычисления дополнительного кода к любому числу. Люди хотят, чтобы он им просто показывал дополнительный код числа. Ну хорошо — теперь при вводе положительного числа калькулятор показывает представление числа в двоичной форме, ибо для него нет обратного и дополнительного кода, а при вводе отрицательного показывает дополнительный и обратный код.

обратный код числа 101010112 в однобайтовом формате равен

Прямой, дополнительный и обратный код

Прямой код числа это представление беззнакового двоичного числа. Если речь идет о машинной арифметике, то как правило на представление числа отводится определенное ограниченное число разрядов. Диапазон чисел, который можно представить числом разрядов n равен

Обратный код числа, или дополнение до единицы (one’s complement) это инвертирование прямого кода (поэтому его еще называют инверсный код). То есть все нули заменяются на единицы, а единицы на нули.

Дополнительный код числа, или дополнение до двойки (two’s complement) это обратный код, к младшему значащему разряду которого прибавлена единица

А теперь «зачем, зачем это все?» ©

Для различия положительных и отрицательных чисел выделяют старший разряд числа, который называется знаковым (sign bit)
0 в этом разряде говорит нам о том, что это положительное число, а 1 — отрицательное.

С положительными числами все вроде бы понятно, для их представления можно использовать прямой код
0 — 0000
1 — 0001
7 — 0111

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

И это оказалось очень удобно для машинных вычислений — при таком представлении отрицательного числа операции сложения и вычитания можно реализовать одной схемой сложения, при этом очень легко определять переполнение результата (когда для представления получившегося числа не хватает разрядности)

Пара примеров
7-3=4
0111 прямой код 7
1101 дополнительный код 3
0100 результат сложения 4

-1+7=6
1111 дополнительный код 1
0111 прямой код 7
0110 результат сложения 6

Что касается переполнения — оно определяется по двум последним переносам, включая перенос за старший разряд. При этом если переносы 11 или 00, то переполнения не было, а если 01 или 10, то было. При этом, если переполнения не было, то выход за разряды можно игнорировать.

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

00111 прямой код 7
00001 прямой код 1
01110 переносы
01000 результат 8 — переполнение

Два последних переноса 01 — переполнение

-7+7=0
00111 прямой код 7
01001 дополнительный код 7
11110 переносы
10000 результат 16 — но пятый разряд можно игнорировать, реальный результат 0

Два последних переноса 11 з перенос в пятый разряд можно отбросить, оставшийся результат, ноль, арифметически корректен.
Опять же проверять на переполнение можно простейшей операцией XOR двух бит переносов.

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

Источник

Пример выполнения задания 1 Задание

Главная > Документ

Информация о документе
Дата добавления:
Размер:
Доступные форматы для скачивания:

Пример выполнения задания 1

Дополнительный код отрицательного числа получается из обратного кода прибавлением к двоичному числу единицы (знаковый разряд в операции не участвует):

Пример выполнения задания 2

Поскольку первый разряд содержит число 1, делаем вывод, что число отрицательное. Следовательно, для решения задачи потребуется найти сначала обратный код, а затем прямой код числа, выполнив в обратной последовательности действия из задания 1.

Определяем обратный код числа : из числа 1011100 (без первого разряда) вычитаем 1:

Пример выполнения задания 3

Количество различных отображаемых цветов K и битовая глубина цвета (число разрядов, используемых для кодировки цвета) b связаны формулой:

обратный код числа 101010112 в однобайтовом формате равен

где, К – количество доступных цветов,

b – битовая глубина.

Объем памяти, необходимой для хранения графического изображения, занимающего весь экран, равен произведению количества пикселей на экране ( N × M ) на число двоичных разрядов, кодирующих одну точку ( b ).

Расчетная формула для требуемого объема памяти ( V ) имеет вид:

Значение b выбирается из следующей таблицы в зависимости от цветового режима.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *