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

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

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

Пример перевода
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 то результат верный.

Источник

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

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

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

Прямой код

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

Обратный код

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

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

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

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

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

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

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

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

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

представление целых чисел прямой обратный дополнительный кодыпредставление целых чисел прямой обратный дополнительный кодыпредставление целых чисел прямой обратный дополнительный кодыпредставление целых чисел прямой обратный дополнительный коды представление целых чисел прямой обратный дополнительный коды(35 голосов, оценка: 4,69 из 5)

Источник

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

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

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

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

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

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

Прямой код числа это представление беззнакового двоичного числа. Если речь идет о машинной арифметике, то как правило на представление числа отводится определенное ограниченное число разрядов. Диапазон чисел, который можно представить числом разрядов 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 0 0 0 0 1 1

Знаковый вид положительное отрицательное 0 1 1 0 1 0 0 1 1 1 1 0 0 1 1 0

1 байт (8 знаков) Беззнаковый – от 0 до 255 Знаковый – от 0 до 127

Задание Определите максимальное положительное число в восьмиразрядном и шестнадцатиразрядном знаковых способах представления чисел.

Пример 1 Число 53 = 1101012 в восьмиразрядном представлении имеет вид: Это же число 53 в 16 разрядах будет записано следующим образом: 0 0 1 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1

Пример 2 Для числа 200 = 110010002 представление в 8 разрядах со знаком невозможно, так как максимальное допустимое число в таком представлении равно 127, а в беззнаковом восьмиразрядном представлении оно имеет вид: 1 1 0 0 1 0 0 0

В k-разрядной целочисленной компьютерной арифметике 2k ≡ 0

Алгоритм получения дополнительного k-разрядного кода отрицательного числа 1. Модуль числа представить прямым кодом в k двоичных разрядах. 2. Значения всех разрядов инвертировать (все нули заменить на единицы, а единицы — на нули), получив, таким образом, k-разрядный обратный код исходного числа. 3. К полученному обратному коду, трактуемому как k-разрядное неотрицательное двоичное число, прибавить единицу.

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

Домашнее задание § 2.1, задание 1, № 4-9

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

Курс повышения квалификации

Дистанционное обучение как современный формат преподавания

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

Курс профессиональной переподготовки

Информатика: теория и методика преподавания в образовательной организации

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

Курс профессиональной переподготовки

Математика и информатика: теория и методика преподавания в образовательной организации

Онлайн-конференция для учителей, репетиторов и родителей

Формирование математических способностей у детей с разными образовательными потребностями с помощью ментальной арифметики и других современных методик

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

Элективный курс «Математические основы информатики», 10 класс. Курс «Математические основы информатики» носит интег­рированный, междисциплинарный характер, материал курса раскрывает взаимосвязь математики и информатики, показы­вает, как развитие одной из этих научных областей стимулиро­вало развитие другой.

Данная презентация разработана для 1 урока по теме «Представление информации в компьютере».

Номер материала: ДБ-890656

Международная дистанционная олимпиада Осень 2021

Не нашли то что искали?

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

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

Роспотребнадзор разработал рекомендации по организации питания в школах

Время чтения: 2 минуты

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

В России разработают план по развитию футбола для девочек в школах

Время чтения: 2 минуты

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

Рособрнадзор проведет исследование качества образования в школах

Время чтения: 2 минуты

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

Кравцов призвал создать федеральную систему учета успеваемости

Время чтения: 1 минута

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

В России пройдет эксперимент с электронными аттестатами

Время чтения: 1 минута

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

В Москве подписан Меморандум о развитии и поддержке классного руководства

Время чтения: 1 минута

Подарочные сертификаты

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

Все материалы, размещенные на сайте, созданы авторами сайта либо размещены пользователями сайта и представлены на сайте исключительно для ознакомления. Авторские права на материалы принадлежат их законным авторам. Частичное или полное копирование материалов сайта без письменного разрешения администрации сайта запрещено! Мнение администрации может не совпадать с точкой зрения авторов.

Источник

Представление чисел в ЭВМ

Целые числа

Прямой кодОбратный кодДополнительный код
0,00011010,00011010,0001101
Прямой кодОбратный кодДополнительный код
1,00011011,11100101,1110011

Вещественные числа (числа с плавающей точкой)

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

Целая часть от деленияОстаток от деления
446 div 2 = 223446 mod 2 = 0
223 div 2 = 111223 mod 2 = 1
111 div 2 = 55111 mod 2 = 1
55 div 2 = 2755 mod 2 = 1
27 div 2 = 1327 mod 2 = 1
13 div 2 = 613 mod 2 = 1
6 div 2 = 36 mod 2 = 0
3 div 2 = 13 mod 2 = 1
1 div 2 = 01 mod 2 = 1

0.15625 = 001012
446.15625 = 110111110,001012 = 1,1011111000101*2 8

Знак S = 0
Порядок P = 8 + 1023 = 103110 = 100000001112
Мантисса: 1011111000101
Для числа с двойной точностью мантисса занимает 52 разряда. Добавляем нули.
Мантисса: 1011 1110 0010 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000
Запишем число:
0 10000000111 1011 1110 0010 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000
В шестнадцатеричной системе счисления: 407BE2800000000016

Целая часть от деленияОстаток от деления
455 div 2 = 227455 mod 2 = 1
227 div 2 = 113227 mod 2 = 1
113 div 2 = 56113 mod 2 = 1
56 div 2 = 2856 mod 2 = 0
28 div 2 = 1428 mod 2 = 0
14 div 2 = 714 mod 2 = 0
7 div 2 = 37 mod 2 = 1
3 div 2 = 13 mod 2 = 1
1 div 2 = 01 mod 2 = 1

Остаток от деления записываем в обратном порядке. Получаем число в 2-ой системе счисления: 111000111
455 = 111000111 2
Для перевода дробной части числа последовательно умножаем дробную часть на основание 2. В результате каждый раз записываем целую часть произведения.
0.375*2 = 0.75 (целая часть 0 )
0.75*2 = 1.5 (целая часть 1 )
0.5*2 = 1 (целая часть 1 )
0*2 = 0 (целая часть 0 )
Получаем число в 2-ой системе счисления: 0110
0.375 = 0110 2

455,375 = 111000111,01102 = 1,110001110110*2 8 2

Дан код величины типа Double. Преобразуйте его число.
а) 408B894000000000;
Представим в двоичном коде:
010000001000 1011 1000 1001 0100 0000 0000 0000 0000 0000 0000 0000 0000 0000
где
S = 0 (положительное число)
P = 100000010002 = 1032 – 1023 = 9
M = 10111000100101
N = 1,10111000100101
С учетом P = 9, N = 1101110001,00101

1101110001 = 2 9 *1 + 2 8 *1 + 2 7 *0 + 2 6 *1 + 2 5 *1 + 2 4 *1 + 2 3 *0 + 2 2 *0+ 2 1 *0 + 2 0 *1 = 512 + 256 + 0 + 64 + 32 + 16 + 0 + 0 + 0 + 1 = 881

б) C089930000000000.
Представим в двоичном коде:
1 10000001000 100110010011000000000000000000000000 0000 0000 0000 0000
где
S = 1 (отрицательное число)
P = 100000010002 = 1032 – 1023 = 9
M = 100110010011
N =1,100110010011
С учетом P = 9, N = 1100110010,011

1100110010 = 2 9 *1 + 2 8 *1 + 2 7 *0 + 2 6 *0 + 2 5 *1 + 2 4 *1 + 2 3 *0 + 2 2 *0 + 2 1 *1 + 2 0 *0 = 512 + 256 + 0 + 0 + 32 + 16 + 0 + 0 + 2 + 0 = 818

Источник

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

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