Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
39
Добавлен:
01.04.2014
Размер:
24.37 Кб
Скачать

Белорусский государственный университет

информатики и радиоэлектроники

Факультет заочного, вечернего и дистанционного обучения

Специальность”Программное обеспечение информационных технологий”

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

по дисциплине «Основы компьютерной техники»

Минск-2009

Задание 1

Задание 1 состоит из двух частей:

  • задание 1.1, относящееся к разделу “Арифметика с алгебраическими числами”;

  • задание 1.2, относящееся к разделу “Арифметика с плавающей точкой”.

Задание 1.1

Задание предполагает нахождения значений С1, С2, С3, С4, определяемые выражениями:

С1 = А+В, С2 = А-В, С3 = В - А, С4 =- А -В

А = 5493; В = 3275;

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

Решение.

Составляем двоично-десятичную запись для чисел А и В.

А = 549310 = 0101 0100 1001 0011

В = 327510 = 0011 0010 0111 0101

Непосредственно используя правила формирования дополнительного кода найдем:

[А]пр = [А]дк = 0. 0101 0100 1001 0011

[В]пр = [В]дк = 0. 0011 0010 0111 0101

[-А]пр = 1. 1010 1011 0110 1101

[-А]дк = 1. 0100 0101 0000 0111

[-В]пр = 1. 0011 0010 0111 0101

[-В]дк = 1. 1100 1101 1000 1011

[С1]пк:

*

* - тетрада, где был перенос.

0

0101

0100

1001

0011

А

+ 0

0011

0010

0111

0101

В

0

1000

0111

0000

1000

+   

0110

- коррекция в тетраде, где был перенос

0

1000

0111

0110

1000

- [С1]пк

+

8

7

6

8

- десятичный эквивалент

С2 = А + (-В)

[С2]пк:

0

0101

0100

1001

0011

[А]ДК

+1

1100

1101

1000

1011

[-B]ДК

0

-

0

0010

0010

0010

0010

0001

0001

1110

0110

1000

[С2]пк

2

2

1

8

десятичный эквивалент

С3 = (-А) + В

[С3]пк:

**

** - тетрады, где было переполнение

1

1010

1011

0110

1101

[-А]дк

+ 0

0011

0010

0111

0101

[В]дк

1

1101

1101

1110

0010

+   

0110

коррекция тетрады с переполнением на 6 (0110)

1

1101

1101

1110

1000

[С3]дк

1

0010

0010

0001

0111

преобразование в прямой код

+

1

1

0010

0010

0001

1000

[С3]пк

-

2

2

1

8

десятичный эквивалент

С4 = (-А) + (-В)

[С4]пк:

*

* - тетрада, где был перенос.

0

0101

0100

1001

0011

А

+ 0

0011

0010

0111

0101

В

0

1000

0111

0000

1000

+   

0110

- коррекция в тетраде, где был перенос

0

1

1000

1001

0111

0111

0110

0110

1000

1000

- |[С4]ПК|

-[С4]ПК с учетом знака

-

8

7

6

8

- десятичный эквивалент

Задание 1.2

Ап=-2 Ам=+0,56

Bп=0 Вм=-0,51

Код: обратный

Операция: деление без восстановления остатка.

Решение.

Запишем мантиссу и порядок для числа А и В в двоичной форме в прямом и обратном коде.

п]пк = 1.0010,

п]мок = 11.1101,

м]пк = 0.10001111

п]пк = 0.0000,

п]мок = 00.0000,

-[вп]мок = 11.1111,

м]пк= 1.100000101=1.10000011.

м]мок= 11.01111100

-[вм]пк= 0.10000011

-[вм]мок= 00.10000011

Сп*=а п - в п :

11.1101

п]мок

+

11.1111

-[вп]мок

11.1101

п*]мок

11.0010

п*]мпк

1.0010

п*]пк

Абсолютное значение предварительного значения мантиссы:

См*= а м / вм.

Определяемый разряда

частного

Выполняемые

действия

Значение очередного разряда частного

1 р. (разряд целой части) -1-й такт

00.10001111

+00.10000011

01.00010010

10.00100100

0

2 р. (старший разряд модуля)

-2-й такт

3 р. - 3-й такт

+11.01111100

01.10100000

11.01000000

+11.01111100

10.10111100

01.01111000

0

1

4 р.- 4-й такт

+00.10000011

01.11111011

11.11110110

0

5 р. - 5-й такт

+11.01111100

11.01110010

10.11100100

0

6 р. - 6-й такт

+11.01111100

10.01100000

00.11000000

1

+00.10000011

01.01000011

10.10000110

0

+11.01111100

10.00000010

00.00000100

1

+00.01111100

00.10000111

01.00001110

1

+00.01111100

01.10010001

0

Таким образом:

м*]пк = 0.010010110

с учетом округления и знака:

м*]пк = 1.01001011

м]пк = 1.01001011 [сп]пк = 1.0010