Организация ЭВМ и систем (контрольная работа)

  • 29 окт. 2010 г.
  • 1653 Слова
ВЯТСКИЙ СОЦИАЛЬНО-ЭКОНОМИЧЕСКИЙ ИНСТИТУТ
______________________________________________________

Кафедра Информатики и вычислительной техники

Факультет Информационных технологий
Кафедра Информатики и вычислительной техники

Контрольная работа

По дисциплине

«Организация ЭВМ и систем»

Вариант 9

Выполнил: ст. гр. ИВТс-23

Торопов Р.А.

Проверил: Волченская Т.В.

Киров2010

Задание 1.

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

1. Выполнить сложение чисел в обратном и дополнительных кодах и результат проверить переводом в десятичную систему счисления:

Решение:

Для удобства составим таблицу, содержащую значения чисел A, B, C в различных кодах:

| |Вдесятичном |В прямом двоичном |В обратном |В дополнительном |В модифицированном обратном|В модифицированном |
| |коде |коде |двоичном коде |двоичном коде |двоичном коде |дополнительном двоичном коде |
|A |12 |0.001100 |0.001100 |0.001100 |00.001100 |00.001100|
|B |-45 |-0.101101 |1.010010 |1.010011 |11.010010 |11.010011 |
|C |-31 |-0.011111 |1.100000 |1.100001 |11.100000 |11.100001 |

Число А>0, поэтому во всех кодах оно будет выглядеть одинаково.

а) A+B в обратномкоде

0.001100

1.010010

1.011110

Проверим результат в десятичном коде

A + B = 12 – 45 = -33

3310 = 32*1 + 16*0 + 8*0 + 4*0 + 2*0 + 1*1 = 1000012 пр = 0111102 обр , что соответствует полученному результату.

б) A+C в дополнительном коде

0.001100

1.100001

1.101101

Проверим результат:

A + C = 12 – 31 = -19

1910 =32*0 + 16*1 + 8*0 + 4*0 + 2*1 + 1*1 = 0100112 пр = 1011002 + 12 = 1011012 доп , что соответствует полученному результату.

в) A+B в модифицированном дополнительном коде

00.001100

11.010011

11.011111

Проверим результат:

A + B = 12 – 45 = -33

3310 = 32*1 + 16*0 + 8*0 + 4*0 + 2*0 + 1*1 = 1000012 пр = 0111102 обр + 12 = 0111112 мод. доп. , что соответствуетполученному результату.

г) A+C в модифицированном обратном коде

00.001100

11.100000

11.101100

Проверим результат

A + C = 12 – 31 = -19

1910 = 32*0 + 16*1 + 8*0 + 4*0 + 2*1 + 1*1 = 0100112 пр = 1011002 обр , что соответствует полученному результату.

Ответ: а) 0111102 обр ; б) 1011012 доп ; в) 0111112 мод. доп. ; г) 1011002 мод. обр

| |Вдесятичном |В прямом двоичном|В обратном |В дополнительном |В модифицированном обратном |В модифицированном |
| |коде |коде |двоичном коде |двоичном коде |двоичном коде |дополнительном двоичном коде |
|A |24 |0.11000 |0.11000 |0.11000 |00.11000 |00.11000|
|B |-19 |-0.10011 |1.01100 |1.01101 |11.01100 |11.01101 |
|C |-12 |-0.01100 |1.10011 |1.10100 |11.10011 |11.10100 |

а) A+B в обратном коде

0.11000

1.01100

10.00100 = 0.00101Единица переноса из знакового разряда прибавляется к младшему разряду

Проверим результат в десятичном коде

A + B = 24 – 19 = 5

510 = 4*1 + 2*0 + 1*1 = 1012 пр, что соответствует полученному результату.

б) A+C в дополнительном коде

0.11000

1.10100

10.01100 = 0.01100

Единица переноса из знакового разряда отбрасывается.

Проверим...