Вариант 17 1курс 1 семестр
.docБЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ
Кафедра программного обеспечения информационных технологий
Факультет ФНиДО
Специальность ПОИТ
Контрольная работа № 1
по дисциплине «Основы компьютерной техники»
часть 1
Вариант № 17
Выполнил студент: Ульянов Р.И.
группа 001023
Зачетная книжка № 001023-17
Минск 2010
Задание 1.1
Найти двоично-десятичные значения C1, C2, C3, C4, определяемых выражениями: С1= А+В, С2=А-В, С3= В-А, С4=-А-В, используя модифицированный дополнительный код, если А = 99, B = 6078. При реализации операции сложения использовать модифицированный дополнительный код.
Решение:
Прямой код заданных двоично-десятичных чисел имеет вид:
[А]пк = 0. 0000 0000 1001 1001
[B]пк = 0. 0110 0000 0111 1000.
Расчет выражений для C1, C2, C3, C4 осуществляется следующим образом.
[С1]пк:
* *
00. 0000 0000 1001 1001 [А]мдк
+ 00. 0110 0000 0111 1000 [B]мдк
00. 0110 0001 0001 0001 - сумма ([А]мдк и [B]мдк),
сформированная по правилам
двоичного cуммирования
+ 0110 0110 - коррекция в тедрадах, где был
перенос
00. 0110 0001 0111 0111 - С1мпк
6 1 7 7 - С110 (десятичный эквивалент С1).
[А]пк = 0. 0000 0000 1001 1001
[-B]пк = 1. 0110 0000 0111 1000.
[С2]пк:
* * *
00. 0000 0000 1001 1001 [А]мдк
+ 11. 1001 1111 1000 1000 [-B] ик +1
11. 1010 0000 0010 0001 - сумма ([А]мдк и [-B] ик +1),
сформированная по правилам
двоичного cуммирования
+ 0110 0110 0110 - коррекция в тедрадах, где был
перенос
11. 1010 0110 1000 0111 - С2мдк
11. 0101 1001 0111 1000
+ 1
11. 0101 1001 0111 1001
- 5 9 7 9 - С210 (десятичный эквивалент С2).
[-А]пк = 1. 0000 0000 1001 1001
[B]пк = 0. 0110 0000 0111 1000.
[С3]пк:
*
11. 1111 1111 0110 0111 [-А] ик +1
+ 00. 0110 0000 0111 1000 [B]мдк
00. 0101 1111 1101 1111 - сумма ([-А]мдк и [B]мдк),
сформированная по правилам
двоичного cуммирования
+ 1010 1010 1010 - коррекция в тедрадах, где не было
перенос
00. 0101 1001 0111 1001 - С3мдк
5 9 7 9 - С310 (десятичный эквивалент С3).
[-А]пк = 1. 0000 0000 1001 1001
[-B]пк = 1. 0110 0000 0111 1000.
[С4]пк:
* *
11. 1111 1111 0110 0111 - [-А] ик +1
+ 11. 1001 1111 1000 1000 - [-B] ик +1
111.
1001 1110 1110 1111
11. 1001 1110 1110 1111 - перенос из знакового поля игнорируется
+ 1010 1010 - коррекция в тетрадах, где не было
переноса, с блокировкой переноса из
тетрады
11. 1001 1110 1000 1001 - [С4]мдк
11. 0110 0001 0111 0110
+ 1
11. 0110 0001 0111 0111
- 6 1 7 7 - С410 (десятичный эквивалент).
Задание 1.2
Найти произведение С2 числа А и В, представленных с плавающей точкой, если А и В представлены в виде порядков, соответственно [ап]пк и [вп]пк и мантисс, соответственно [ам] пк и [вм] пк, где
А |
В |
|
|
||||||
порядок |
мантисса |
порядок |
мантисса |
|
|
||||
з |
Аз |
з |
аз |
з |
аз |
з |
аз |
код |
опер |
+ |
3 |
+ |
0.9 |
- |
1 |
+ |
0.55 |
о |
у2 |
[ап]пк = 0.011, [ам]пк = 0.1001,
[вп]пк = 1.001, [вм]пк = 0.110111.
При выполнении операций использовать обратный код. При умножении мантисс использовать метод умножения с младшего разряда множителя со сдвигом множителя.
При выполнении задания порядки и мантиссы операндов А и В необходимо представить в двоичной системе счисления и сформировать для них прямые коды. Разрядность модуля порядка должна быть равна 3, разрядность модуля мантиссы - 6.
Результат (порядок и мантисса) должен быть представлен в прямом коде в нормализованной форме.
Решение
Знак искомого произведения, представляемого знаком его мантиссы, положительный, так как знаки мантисс сомножителей положительные.
Предварительное значение порядка произведения определяется следующим образом:
С2п*=ап +вп:
00. 011 - [ап]мок
+ 11.110 - [вп]мок
100.001
+ 1
00.010 - [С2п]мпк, т.е. [С2п]пк = 0.010.
Абсолютное значение предварительного значения мантиссы произведения определяется следующим образом:
[С2м]*:
1001 - [ам]
* 110111 - [вм
1001
+ 1001 .
11011
+ 1001 .
111111
+ 1001 .
11001111
+ 1001 .
111101111
Таким образом,
[С2м]пк = 0.111101111.
Значение мантиссы и порядка произведения имеем с учетом ранее полученного знака:
[С2м]пк = 0.111101111.
[С2п]пк = 0.010.