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



При сложении чисел в дополнительном коде возникающая единица переноса в знаковом разряде отбрасывается.

При сложении чисел в обратном коде возникающая единица переноса в знаковом разряде прибавляется к младшему разряду суммы кодов.

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

Пример

Сложить двоичные числа X и Y в обратном и дополнительном кодах.

а) X= 111, Y= -11;

1) Сложим числа, пользуясь правилами двоичной арифметики:

2) Сложим числа, используя коды:

Прямой код Сложение в обратном коде Сложение в дополнительном коде

Так как результат сложения является кодом положительного числа (знак 0), то (X+Y)обр=(X+Y)доп=(X+Y)пр.

б) X= -101,Y= -11;

1) Сложим числа, пользуясь правилами двоичной арифметики:

2) Сложим числа, используя коды:

Прямой код Сложение в обратном коде Сложение в дополнительном коде

Так как сумма является кодом отрицательного числа (знак 1), то необходимо перевести результаты в прямой код:
- из обратного кода
(X+Y)обр=1,1110100 (X+Y)пр=1,0001011;
- из дополнительного кода
(X+Y)доп=1,1110101 (X+Y)пр=1,0001010+0,0000001=1,0001011.
Таким образом, X+Y= -1011 и полученный результат совпадает с обычной записью

Задание:

  I II III IV V VI

1

11510 24210 20710 18510 15810 23910
-7010 -2410 -9510 -6510 -4710 -8910

2

0011010111010110 0110010010010101 0111100011001000 0111011101000111 0100011011110111 0000010101011010
1000000110101110 1000011111110001 1111011101101101 1010110110101110 1011101001100000 1001110100001011
3 X=-11010; Y=1001111 X=-11101; Y=-100110 X=1110100; Y=-101101 X=-10110; Y=-111011 X=1111011; Y=-1001010 X=-11011; Y=-10101
4 X=-11101; Y=-100110 X=-10110; Y=-111011 X=-10110; Y=-111011 X=1111011; Y=-1001010 X=1110100; Y=-101101 X=-11010; Y=1001111

 

Порядок выполнения работы:

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

2. Запишите в десятичной системе счисления целое число, если дан его дополнительный код

3. Выполнить операции +,- чисел в обратных кодах

4. Выполнить операции +,- чисел в дополнительных кодах

Контрольные вопросы:

1. Дайте определение понятию «дополнительный код»

2. Дайте определение понятию «обратный код»

3. Как реализовать операцию вычитания, с помощью операции сложения?

 

Практическая работа №2

Тема: Выполнение арифметических операций в естественной и нормальной форме

Цель работы: Научиться производить операции сложения и вычитания в дополнительных и обратных кодах

Литература:

1. Калабеков Б.А. Цифровые устройства и микропроцессорные системы. – М.: Горячая линия, 2005г

2. Калиш Г.Г. Основы вычислительной техники. – М. Высш. шк., 2000 г.

Краткие теоретические сведения:

Числа с фиксированной точкой.

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

Пример.
Ячейка с записью целого числа.

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

Числа с плавающей точкой.

Для представления чисел с плавающей точкой (ЧПТ) используется полулогарифмическая форма записи числа:

N = ± mq ± p

где q- основание системы счисления, p - порядок числа, m - мантисса числа N.

Положение точки определяется значением порядка p. С изменением порядка точка перемещается (плавает) влево или вправо.
Пример.

12510=12.5*101=1.25*102=0.125*103=0.0125*104=...

Для установления однозначности при записи чисел принята нормализованная форма записи числа. Мантисса нормализованного числа может изменяться в диапазоне: 1/q ≤ | m | < 1. Таким образом в нормализованных числах цифра после точки должна быть значащей.

Пример.

Для представления чисел в машинном слове выделяют группы разрядов для изображения мантиссы, порядка, знака числа и знака порядка:
а) представление чисел в формате полуслова

б) представление чисел в формате слова


Наиболее типично представление ЧПТ в формате слова (32 разряда).
Пример.
Число А=-3.510=-11.12=-0.111·1010

Максимальным числом представимым в формате слова будет A=(0.1111...1·101111111)2 (1·2127)10.

Таким образом числа с плавающей точкой позволяют увеличить диапазон обрабатываемых чисел, но при этом точность изображения чисел определяется только разрядами мантиссы и уменьшается по сравнению с числами с фиксированной точкой. При записи числа в формате слова диапазон представимых чисел будет от -1·2127 до 1·2127 (2127 1038), а точность определяться мантиссой, состоящей из 23 разрядов. Точность может быть повышена путем увеличения количества разрядов мантиссы. Это реализуется путем представления чисел с так называемой двойной точностью (используется формат двойного слова):


Дата добавления: 2019-09-13; просмотров: 491; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!