bsuir.info
БГУИР: Дистанционное и заочное обучение
(файловый архив)
Вход (быстрый)
Регистрация
Категории каталога
Другое [157]
АВС [6]
КПиЯП [80]
ОАиП [305]
ОКТ [79]
СиСПО [8]
Форма входа
Логин:
Пароль:
Поиск
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Файловый архив
Файлы » ПОИТ » ОКТ

ПОИТ (д.), ОКТ, Контрольная работа №1, вар.21, 2017
Подробности о скачивании 01.02.2018, 11:29
Задание 1.1

Задание предполагает нахождения значений С1, С2, С3, С4, определяемые выражениями:
С1 = А + В, С2 = А - В, С3 = В - А, С4 = -А - В, где А и В определяются номером варианта по таблице.
При выполнении задания операнды А = 6078 и В = 2829 необходимо представить в двоично-десятичной системе, сформировать для них прямые коды и, используя дополнительный код по правилам двоично-десятичной арифметики, описанной в разделе «Арифметика с алгебраическими двоично-десятичными числами», найти значения С1, С2, С3, С4.
Результат должен быть представлен в прямом коде.

Решение.

Представим операнды А10=6078 и В10=2829 в двоично-десятичной системе счисления:
А2-10 = 0110 0000 0111 1000,
В2-10 = 0010 1000 0010 1001.

Сформируем для них прямые коды:

[A] пк = [A] дк = 0. 0110 0000 0111 1000,
[В] пк = [В] дк = 0. 0010 1000 0010 1001

т.к. А и В - положительные числа, записи их прямого и дополнительного кодов совпадают.

Расчет выражений для C1, C2, C3, C4 осуществляется следующим образом:

[С1] пк :

0. 0 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 - [A] дк
+ 0. 0 0 1 0 1 0 0 0 0 0 1 0 1 0 0 1 - [В] дк
0. 1 0 0 0 1 0 0 0 1 0 1 0 0 0 0 1 - двоичная сумма
+ 0 1 1 0 0 1 1 0 - коррекция
0. 1 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1 - [С1]пк
8 9 0 7 -[С1]10 (десятичный эквивалент)

.


[С2] пк :

0. 0 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 - [A] дк
+ 1. 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 - [-В] ик+1=[-B]дк+6
1 0. 0 0 1 1 1 0 0 0 0 1 0 0 1 1 1 1 - двоичная сумма
- 1 0 1 0 1 0 1 0 - коррекция
0. 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 1 - [С2]пк
3 2 4 9 - [С2]10 (десятичный эквивалент)

[С3] пк :


0. 0 0 1 0 1 0 0 0 0 0 1 0 1 0 0 1 - [В] дк
+ 1. 1 0 0 1 1 1 1 1 1 0 0 0 1 0 0 0 - [-А] ик+1=[-А]дк+6
1. 1 1 0 0 0 1 1 1 1 0 1 1 0 0 0 1 - двоичная сумма
+ 0 1 1 0 0 1 1 0 - коррекция
1. 1 1 0 0 1 1 0 1 1 0 1 1 0 1 1 1
1. 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 0
+1
1. 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 1 - [С3]пк
- 3 2 4 9 - [С3]10 (десятичный эквивалент)

[С4] пк :

1. 1 0 0 1 1 1 1 1 1 0 0 0 1 0 0 0 - [-А] ик+1=[-А]дк+6
+ 1. 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 - [-В] ик+1=[-B]дк+6
11. 0 1 1 1 0 1 1 1 0 1 0 1 1 1 1 1 - двоичная сумма
1 0 1 0 1 0 1 0 1 0 1 0 - коррекция
1. 0 1 1 1 0 1 1 0 1 1 1 1 1 0 0 1 - [С4]ик+1=[С4]дк+6
1. 1 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1 - [С4]пк
- 8 9 0 7 - [С4]10 (десятичный эквивалент)

Результат:

[C1]пк = 0. 1 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1;
[C2]пк = 0. 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 1;
[C3]пк = 1. 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 1;
[C4]пк = 1. 1 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1.

Задание 1.2
Задание предполагает выполнение операции умножения с младшего разряда множителя со сдвигом промежуточного результата над числами А и В, представленными с плавающей точкой с использованием обратного кода. Числа А и В представлены в виде порядков, соответственно [ап] и [вп] и мантисс, соответственно [ам] и [вм],
где [ап] =0, [ам] =-0.85, [вп] = 3, [вм] = -0.6.
При выполнении задания порядки и мантиссы операндов А и В необходимо представить в двоичной системе счисления и сформировать для них прямые коды. Разрядность модуля порядка должна быть равна 3, разрядность модуля мантиссы - 6.
Результат (порядок и мантисса) должен быть представлен в прямом коде в нормализованной форме.
Решение.
Представим порядки и мантиссы операндов А и В в двоичной системе счисления:
[ап] = 010 = 0002, [ам] =-0.8510=-0.1101102,
[вп] = 310 = 0112, [вм] = -0.610=-0.1001102.

Сформируем для них прямые коды:
[ап]пк = 0.000, [ам]пр = 1.110110,
[вп]пк = 0.011, [вм]пр = 1.100110.

Знак искомого произведения, представляемого знаком его мантиссы, положительный, так как знаки мантисс сомножителей одинаковые.
Предварительное значение порядка произведения определяется следующим образом:

С2п*=а п +в п :

0. 000 - [ап]ок
+ 0. 011 - [вп]ок
0. 011 - [С2 п`]ок = [С2 п`] пк


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

[|С2м|]= |aм|*|вм| =
1 1 0 1 1 0
* 1 0 0 1 1 0
0 0 0 0 0 0 - начальное значение промежуточного произведения
0 0 0 0 0 0 0 - первый младший разряд множителя равен нулю, поэтому выполняется только сдвиг
+ 1 1 0 1 1 0 - второй разряд множителя равен единице
1 1 0 1 1 0 0 - промежуточное произведение с учетом второго разряда
0 1 1 0 1 1 0 0 - сдвинутое промежуточное произведение
+1 1 0 1 1 0 - третий разряд множителя равен единице
1 0 1 0 0 0 1 0 0 - промежуточное произведение с учетом третьего разряда
1 0 1 0 0 0 1 0 0 - сдвинутое промежуточное произведение
0 1 0 1 0 0 0 1 0 0 - четвёртый разряд множителя равен нулю, поэтому выполняется только сдвиг
0 0 1 0 1 0 0 0 1 0 0 - пятый разряд множителя равен нулю, поэтому выполняется только сдвиг
+1 1 0 1 1 0 - старший разряд множителя равен единице
1 0 0 0 0 0 0 0 0 1 0 0 - промежуточное произведение с учетом старшего разряда
1 0 0 0 0 0 0 0 0 1 0 0 -сдвинутое промежуточное произведение.

Таким образом,
[|С2м|’] пк = 0. 100000000100,
с учетом округления имеем
[|С2м|] = 0.100000.

Нормализация представления результата не нарушена, так как мантисса имеет ненулевой старший разряд.

Результат:
[С2 м]пк = 0.100000.
[С2п]пк = 0.011.
Категория: ОКТ | Добавил: landrin
Просмотров: 876 | Загрузок: 3
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]