Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаболаторная №3.doc
Скачиваний:
35
Добавлен:
18.11.2019
Размер:
145.92 Кб
Скачать
  1. Запишите дополнительный код числа, интерпретируя его как шестнадцатибитовое целое со знаком.

а)2085010+2110=2087110=110001100001012→ 111000110000101(дополнительный)

б) -1864110+2110 = -1862010 = -1101000101111002

1,1101000111100(прямой) → 1,0010111000011(обратный)

1,0010111000100(дополнительный)

  1. Переведите числа:

10356+216 = 11006 = (1 * 63) + (1 * 62) = 35210;

3105810 +2110= 3105810 11201210223;

31058

3

31056

10352

3

2

10350

3450

3

2

3450

1150

3

0

1149

383

3

1

381

127

3

2

126

42

3

1

42

14

3

0

12

4

3

2

3

и

1

10100012+2110 = 10100012 + 111012 = 11011102 → 4205

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

а)   X=  –11010; (X + Y) = 110101

Y= 1001111;

Прямой

Обратный

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

X

1.0011010

1.1100101

1.1100110

Y

1001111

1001111

1001111

Сложение в

обратном коде

Сложение в

дополнительном коде

1,1100101

1001111

0,0110100

1

0,0110101

1,1100110

1001111

0,0110101

(1 отбрасывается)

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

Ответ: 110101.

б)  X= –11101; (X + Y) = -1000011

Y= –100110;

Прямой

Обратный

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

X

1.0011101

1.1100010

1.1100011

Y

1.0100110

1.1011001

1.1011010

Сложение в

обратном коде

Сложение в

дополнительном коде

1.1100010

1.1011001

1.0111011

1

1.0111100

1.1100011

1.1011010

1.0111101

(1 отбрасывается)

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

Из обратного кода:

1.0111100(обр.) → 1,1000011(прям.)

Из дополнительного кода:

1.0111101(допол.) →1,1000010(обр.) + 0,0000001 → 1,1000011(прям.)

Таким образом, X+Y= -1000011 и полученный результат совпадает с обычной записью.

Ответ: –1000011.