УЧРЕЖДЕНИЕ ОБРАЗОВАНИЯ
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ
Факультет заочного, вечернего и дистанционного обучения
Специальность: программное обеспечение
информационных технологий
КОНТРОЛЬНАЯ РАБОТА № 2
ПО ОСНОВАМ КОМПЬЮТЕРНОЙ ТЕХНИКИ
Вариант № 14
Контрольная работа № 2.
Вариант № 14.
Задание относится к разделу «Схемотехнические основы ЭВМ» и состоит из двух частей:
построить блок управления аппаратного принципа, реализующий заданную ГСА (граф- схему алгоритма).
построить блок управления микропрограммного принципа, реализующий заданную ГСА.
Задание 1
Построить цифровой автомат заданного типа (Мили или Мура) для заданной ГСА, используя заданный тип триггера (RS-, D-, T-триггер). Тип автомата, номер ГСА (соответствует номеру рисунка, на котором она находится) и тип триггера выбирается из табл.2.
Дано:
Тип триггера (ТТ): Т-триггер
Тип цифрового автомата (ТЦА): цифровой автомат Мили
N | начало пути | конец пути | логическое условие | выходной сигнал | управление памятью | ||||
п.п. | B(t) | код B(t) | B(t+1) | код B(t+1) | qT1 | qT2 | qT3 | ||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
1 | B1 | 001 | B2 | 010 | y4 | 0 | 1 | 1 | |
2 | 001 | B3 | 011 | x4 | y8. y13. y1 | 0 | 1 | 0 | |
3 | B2 | 010 | B2 | 010 | y4 | 0 | 0 | 0 | |
4 | 010 | B4 | 100 | x12 | y29. y14 | 1 | 1 | 0 | |
5 | B3 | 011 | B3 | 011 | x11 | y8. y13. y1 | 0 | 0 | 0 |
6 | 011 | B4 | 100 | y29. y14 | 1 | 1 | 1 | ||
7 | B4 | 100 | B5 | 101 | y3. y14 | 0 | 0 | 1 | |
8 | 100 | B5 | 101 | x5 | y3.y14.y12 | 0 | 0 | 1 | |
9 | B5 | 101 | B6 | 110 | x2 | y10 | 0 | 1 | 1 |
10 | 101 | B5 | 101 | −− | 0 | 0 | 0 | ||
11 | B6 | 110 | B7 | 111 | 1 | y21.y13.yк | 0 | 0 | 1 |
На основе входных сигналов и логических условий создаём список:
y1 = x4 + x11 (2, 5)
y3 = + x5 + (7, 8, 10)
y4 = + (1, 3)
y8 = x4 + x11 (2, 5)
y10 = x2 (9)
y12 = x5 (8)
y13 = x4 + x11 + (2, 5, 11)
y14 = + + + x5 +
(4, 6, 7, 8, 10)
y21 = (11)
y29 = x12 + (4, 6)
yк = (11)
qT1 = x12 + + + x5 + x2 + +
(4, 6, 7, 8, 9, 10, 11)
qT2 = + x4 + + x11 + x2 +
(1, 2, 3, 5, 9, 11)
qT3 = x4 + x11 + + x5 + +
(2, 5, 7, 8, 10, 11)
Задание 2.1 принято
Задание 2
Написать микропрограмму, соответствующую заданной ГСА, с учетом заданных множества микроопераций (Y), множества проверяемых условий (Х), ёмкости запоминающего устройства (ЗУ) и начального адреса размещения микропрограммы (МП) в ЗУ. В каждом адресе запоминающего устройства может храниться 16 бит информации. Обозначение ук соответствует микрооперации, обозначающей последнюю микрокоманду в микропрограмме.
Если это допускает длина микрокоманды, использовать модификатор дисциплины перехода.
Дано:
Общее количество микроопераций (Y) = 31
Общее количество проверяемых условий (X) = 31
Ёмкость ЗУ (количество адресов ЗУ) = 1000
Начальный адрес МП (микропрограммы в ЗУ) = 200
Решение:
Исходя из характеристик управляемого, объекта следует:
длина кода для кодирования микроопераций равна к=5, так как
количество выполняемых в управляемом объекте микроопераций равно 31;
длина кода для кодирования условий равна р = 5, так как количество проверяемых условий в управляемом объекте равно 31;
длина кода адреса равна десяти, так как количество адресов в памяти, учитывая, что длина адресуемой ячейки равна 16 битам (т.е. двум байтам), равно 1024.
Так как все биты микрокоманды уже заняты, мы не можем включить в микрокоманду перехода модификатор дисциплины перехода. Поэтому будем использовать во всех случаях первую дисциплину перехода.
При этом адрес следующей микрокоманды Ас формируется как:
АT+ 1, если хi =1;
Ас =
А, если хi =0,
где Ат - адрес текущей выполняемой команды.
Таким образом, формат микрокоманд для данного управляемого объекта имеет следующий вид:
МКО Т Y1 Y2 Y3
0 | 1………5 | 6………… 10 | 11…………15 |
МКП Т Х А
0 | 1……….5 | 6…………………………….15 |
Формат операционной микрокоманды (МКО) имеет длину 16 бит и включает:
поле типа микрокоманды (М), имеющее длину в один бит, занимает 0-ой разряд микрокоманды; в этом поле для данного типа микрокоманды записано значение «1»;
поле первой микрооперации (Y1), которое занимает разряды с 1-го по 7;
поле второй микрооперации (Y2), которое занимает разряды с 8-го по 14;
поле микрооперации ук, которое используется только в последней микрокоманде.
Таким образом, данный формат позволяет задавать при необходимости одной микрокомандой две микрооперации.
Формат микрокоманды перехода (МКП) имеет длину 16 бит и включает:
поле типа микрокоманды (Т), имеющее длину в один бит и занимающее 0-ой разряд микрокоманды; в этом поле для данного типа микрокоманды записано значение «0»;
поле проверяемого условия (Х), которое занимает разряды с 1-го по 5;
поле адреса (А), которое занимает разряды с 6-го по 15.
N пп | Nвер | Адрес расположения микрокоманды в ЗУ | Код микрокоманды | Примечание |
1 | 2 | 3 | 4 | 5 |
2 | 1 | 0011001000 | 1.00001.01101.00000 | |
3 | 2 | 0011001001 | 1.00101.00000.00000 | |
4 | 3 | 0011001010 | 1.10101.01011.00000 | |
5 | 4 | 0011001011 | 0.00001.0011010011 | 5 |
6 | 11 | 0011001100 | 0.01110.0011001110 | 12 |
7 | − | 0011001101 | 0.00000.0011001100 | 11 |
8 | 12 | 0011001110 | 1.10011.00000.00000 | |
9 | 7 | 0011001111 | 0.01100.0011010001 | 8 |
10 | 10 | 0011010000 | 1.01011.01010.00000 | |
11 | 8 | 0011010001 | 0.00101.0011010011 | 9 |
12 | − | 0011010010 | 0.00000.0011001010 | 3 |
13 | 9 | 0011010011 | 1.11111.00000.00000 | |
14 | 5 | 0011010100 | 0.00111.0011001010 | 3 |
15 | 6 | 0011010101 | 1.00100.01111.01010 |
studfiles.net
УЧРЕЖДЕНИЕ ОБРАЗОВАНИЯ
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ
Факультет непрерывного и дистанционного обучения
Специальность: программное обеспечение информационных технологий.
КОНТРОЛЬНАЯ РАБОТА №1
по дисциплине "Основы компьютерной техники"
Вариант № 18
Минск 2012
Задание 1.1
Найти значения С1, С2, С3, С4 определяемых выражениями:
С1 = А+В; С2 = А-В; С3 = В- А; С4 =- А -В.
При А10=-3390;B10=+875.
В ходе решения использовать модифицированный обратный код. Результат представить в прямом коде.
Решение:
Прямой двоично-десятичный код заданных чисел имеет вид:
[A]пк = -339010 =1.0011 0011 1001 00002-10;
[B]пк = +87510 =0.0000 1000 0111 01012-10;
Обратный и инверсный модифицированный код заданных чисел имеет вид:
[A]мик = 11.1100 1100 0110 1111;
[B]мок = 00.0000 1000 0111 0101.
Рассчитаем выражения для С1, С2, С3, С4.
[С1]пк :
11.1100 1100 0110 1111 [A]мик = [А]мок + 6
00.0000 1000 0111 0101 [B]мок
11.1101 0100 1110 0100 сумма [A]мик и [B]мок
0110 1010 коррекция
11.1101 1010 1110 1010 [С1]мок
11.0010 0101 0001 0101 [С1]мпк
С110=-2515 (десятичный эквивалент).
Формирование С2 и С3, в выражениях которых в операции сложения принимают участие числа с одинаковыми знаками, осуществляется за счет сложения абсолютных значений операндов с последующим присвоением полученной суммы знака одного из операндов.
Таким образом, для определения С2 и С3 выполняются следующие действия:
|С2| = |С3|:
0.0011 0011 1001 0000 [|A|]пк
0.0000 1000 0111 0101 [|B|]пк
0.0011 1100 0000 0101
0110 0000 0110 коррекция
0.0100 0010 0110 0101
[С2]пк = 1.0100 0010 0110 0101;
C210 = -4265 (десятичный эквивалент).
[С3]пк = 0.0100 0010 0110 0101;
С310 = +4265 (десятичный эквивалент).
[С4]пк:
00.0011 0011 1001 0000 [-А]мок
11.1111 0111 1000 1010 [-В] мик = [В]мок + 6
100.0010 1011 0001 1010
+1
00.0010 1011 0001 1011
1010 1010 коррекция
00.0010 0101 0001 0101
[С4]пк = 00.0010 0101 0001 0101
С410 = +2515 (десятичный эквивалент).
Ответ:
[С1]пк = 1.0010 0101 0001 0101;
[С2]пк = 1.0100 0010 0110 0101;
[С3]пк = 0.0100 0010 0110 0101;
[С4]пк = 0.0010 0101 0001 0101.
При коррекции в процессе формирования С1 Вы использовали вычитание -6, а нужно прибавлять -6
Задание 1.2
Выполнить деление с восстановлением остатка (С=А/В). В ходе решения использовать модифицированный дополнительный код. Результат (порядок и мантисса) представить в прямом коде в нормализованной форме. Разрядность модуля порядка принять равной 3-ом, разрядность модуля мантиссы – 6-ти.
[aп] = -2;
[ам] = +0.56;
[вп] = -0;
[вм] = +0.51.
Решение:
Перевожу числа в двоичную систему счисления:
Знак искомого частного будет отрицательный, так как знаки мантисс делимого и делителя разные.
Предварительное значение порядка частного:
Сп = ап – вп:
11.010 [aп]мдк
00.000 [-вп]мдк
11.110
1.010 значение порядка в прямом коде.
Абсолютные значения операндов А и В имеют вид:
[|aм|]мдк = 00.100100, [|вм|]мдк =00.1000001, [-|вм|]мдк = 11.011111.
Найдем предварительное абсолютное значение мантиссы частного за счет выполнения восьми тактов деления.
00.100100 11.011111 | |||
Единица игнорируется, так как код дополнительный. | 100.000011 00.000110 11.011111 | 1 | так как остаток>0 арифметический сдвиг влево |
11.100101 00.100001 | 0 | так как остаток<0 восстановление | |
Единица игнорируется, так как код дополнительный. | 100.000110 00.001100 11.011111 | арифметический сдвиг влево | |
11.101011 00.100001 | 0 | так как остаток<0 восстановление | |
Единица игнорируется, так как код дополнительный. | 100.001100 00.011000 11.011111 | арифметический сдвиг влево | |
11.110111 00.100001 | 0 | так как остаток<0 восстановление | |
00.011000 00.110000 11.011111 | арифметический сдвиг влево | ||
Единица игнорируется, так как код дополнительный. | 100.001111 00.011110 11.011111 | 1 | так как остаток>0 арифметический сдвиг влево |
11.111101 00.100001 | 0 | так как остаток<0 восстановление | |
Единица игнорируется, так как код дополнительный. | 100.011110 00.111100 11.011111 | арифметический сдвиг влево | |
Единица игнорируется, так как код дополнительный | 100.011011 00.110110 11.011110 | 1 | так как остаток>0 арифметический сдвиг влево |
Единица игнорируется, так как код дополнительный | 100.010100 00.101000 | 1 | так как остаток>0 арифметический сдвиг влево |
Учитывая знаки остатков, полученные на восьми тактах, абсолютное предварительное значение мантиссы искомого частного равно:
[|См|]пк = 1.0001011, с учетом округления:
[|См|]пк = 1.000110.
Нормализуем мантиссу частного, сдвинув ее на один разряд вправо, а предварительное значение порядка частного увеличим на единицу.
[|См|]пк = 0.100011;
[|Сп|]пк = 1.010 + 1 = 1.011.
Ответ:
[См]пк = 0.100011;
[Сп]пк = 1.011.
studfiles.net
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ
Кафедра программного обеспечения информационных технологий
Факультет НиДО
Специальность ПОИТ
Контрольная работа № 1
по дисциплине «Основы компьютерной техники»
Вариант № 2
Выполнил студент: ********
группа ******
Зачетная книжка № ******-28
Электронный адрес ******@****.***
Минск 2010
Задание 1.1
инеобходимо представить в двоично-десятичной системе, сформировать для них прямые коды и, используя обратный код, найти значения,,,, определяемые выражениями,,,, гдеи.
Результат должен быть представлен в прямом коде.
Решение:
ив двоично-десятичной системе:
Прямой двоично-десятичный код для и:
При выполнении первого суммирования по правилам двоичной арифметики возникающий перенос (в тетрадах, отмеченных знаком *) унес лишнюю 6 (двоичный перенос унес из тетрады 16, а по правилам десятичного сложения он должен унести 10), что означает, что избыточная «6», введенная за счет использования инверсного кода числа вместо обратного, исчезает в тех тетрадах, где был перенос, и сохраняется в тетрадах, где перенос отсутствовал. Коррекция на +6 выполняется в тех тетрадах, где был перенос. Таким образом после коррекции во всех тетрадах будет иметь место избыточная 6, что позволяет перейти от такой записи к прямому коду результата за счет инвертирования записей всех тетрад модульной части.
Коррекция на 10 выполняется в тех тетрадах, где не было переноса (прибавлением 10, которая является дополнительным кодом -6, с блокировкой переноса из тетрады заменяется операция вычитания 6 из кода тетрады). Таким образом, после коррекции во всех тетрадах будет иметь место точное значение, а так как результат положительный, то эта запись соответствует искомому прямому коду С4.
Формирование С2 и С3, в выражениях которых в операции сложения принимают участие числа с одинаковыми знаками, осуществляется за счет сложения абсолютных значений операндов с последующим присвоением полученной суммы знака одного из операндов.
Таким образом, для определения С2 и С3 выполняются следующие действия:
Результат:
Задание 1.2
Задание предполагает выполнение операции сложения в двоичном дополнительном коде над числами А и В, представленными с плавающей точкой.
А -{ап = -2 (порядок А), ам = - 0.56 (мантисса А)}; В -{bп = 0 (порядок B), bм = -0.51 (мантисса B)}
Разрядность модуля порядка должна быть равна 3, разрядность модуля мантиссы - 6 .
Результат (порядок и мантисса) должен быть представлен в прямом коде в нормализованной форме.
Решение:
Выравнивание порядков:
– разность порядков в дополнительном коде
– разность порядков в прямом коде
Так как знак разности порядков отрицательный, то в качестве общего порядка, берется порядок второго числа .
Для того чтобы взять в качестве порядка первого числа порядок второго числа, т.е. увеличив его порядок на 2, необходимо мантиссу этого меньшего числа умножить на , т.е. выполнить её арифметический сдвиг на два разряда вправо.
– мантисса первого числа после выравнивания в прямом коде.
– мантисса второго числа после выравнивания в прямом коде.
– мантисса первого числа после выравнивания в дополнительном коде.
– мантисса второго числа после выравнивания в дополнительном коде.
– результат в дополнительном коде
– результат в прямом коде
Так как при выполнении операции сложения имеют место перенос из старшего числового разряда в знаковый и перенос из знакового разряда, то переполнение разрядной сетки отсутствует. Следовательно,нарушение нормализации отсутствует.
Результат:
studfiles.net
УЧРЕЖДЕНИЕ ОБРАЗОВАНИЯ
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ
Факультет заочного, вечернего и дистанционного обучения
Специальность: программное обеспечение
информационных технологий
КОНТРОЛЬНАЯ РАБОТА
ПО ОСНОВАМ КОМПЬЮТЕРНОЙ ТЕХНИКИ № 1
Вариант № 14
Контрольная работа № 1.
Вариант № 14.
Задание 1
Задание 1 состоит из двух частей:
задание 1.1, относящееся к разделу «Арифметика с алгебраическими числами»;
задание 1.2, относящееся к разделу «Арифметика с плавающей точкой».
Задание 1.1
Задание предполагает нахождения значений С1, С2, С3, С4, определяемые выражениями:
С1 = А+В,
С1 = А−В,
С1 = В− А,
С1 = − А −В
При выполнении задания операнды А и В необходимо представить в двоично-десятичной системе, сформировать для них прямые коды и, используя заданный код в варианте по правилам двоично-десятичной арифметики, описанной в разделе «Арифметика с алгебраическими двоично-десятичными числами», найти значения С1, С2, С3, С4.
Результат должен быть представлен в прямом коде.
Дано:
Операнд А
Операнд В
Код, используемый при выполнении задания: обратный
Решение:
С1 = А+В
С2 = А − В = A + (−B)
С3 = В − А = B + (−A)
С4 = − А – В = (−A) + (−B)
A = =
= 11. 0001 0101 0001 1000
= = 11. 1110 1010 1110 0111
= = 00. 0001 0101 0001 1000
B = =
= = 00. 0011 0110 0010 1000
= 11. 0011 0110 0010 1000
= = 11. 1100 1001 1101 0111
С1 = А+В
С1 = 11. 1110 1010 1110 0111 −
+ 00. 0011 0110 0010 1000 −
100. 0010 0001 0000 1111
+ 1 – учёт переноса при
суммировании обратных кодов
00. 0010 0001 0001 0000 -
+ 1010 – коррекция в тетрадах, где не
было переноса
00. 0010 0001 0001 1010 -
− 1010 – коррекция в тетрадах, где числа
больше 1001
0010 0001 0001 0000 - =
+ 2 1 1 0 −
С2 = А − В
|C2| = 00.0001 0101 0001 1000 − [|A|]
+ 00.0011 0110 0010 1000 − [|B|]
00.0100 1011 0100 0000 − [|C2|]
+ 0110 0110 + 6
00.0101 0001 0100 0110 −
5 1 4 6 −
+ 5 1 4 6 −
С3 = В − А
|C3| = 00.0001 0101 0001 1000 − [|A|]
+ 00.0011 0110 0010 1000 − [|B|]
00.0100 1011 0100 0000 − [|C3|]
+ 0110 0110 + 6
00.0101 0001 0100 0110 −
5 1 4 6 −
+ 5 1 4 6 −
С4 = − А – В = (−A) + (−B)
С4 = 0. 0001 0101 0001 1000 −
+ 1. 1100 1001 1101 0111 −
1. 1101 1110 1110 1111 −
1. 0010 0001 0001 0000 −
− 2 1 1 0 −
Задание 1.2
Задание предполагает выполнение заданной операции над числами А и В, представленными с плавающей точкой.
При выполнении задания порядки и мантиссы операндов А и В, заданные в таблице, необходимо представить в двоичной системе счисления и сформировать для них прямые коды. Разрядность модуля порядка должна быть равна 3, разрядность модуля мантиссы - 6 .
Результат (порядок и мантисса) должен быть представлен в прямом коде в нормализованной форме.
Дано:
A | B | код | опер. | ||||||
порядок | мантисса | порядок | мантисса | ||||||
знак | абс.знач. | знак | абс.знач. | знак | абс.знач. | знак | абс.знач. | ||
− | 2 | + | 0.65 | + | 2 | − | 0.51 | доп. | + |
1 | 10 | 0 | .101011 | 0 | 10 | 1 | .100001 |
Решение:
= 1.010
= 0.1010011 ≈ 0.101011
= 0.010
= 1.1000001 ≈ 1.100001
= 1.110
= 0.101010
= 0.010
= 1.011111
11.110
+ 00.010
100.000 разность порядков в ДК
00.000 разность порядков в ПК
=> мантиссы не сдвигаем
= +
00.101010
+ 11.011111
100.001001
00.110111
Таким образом, мы получили нормализованную мантиссу − старший разряд мантиссы равен единице.
С1 { = 0.000, = 11.110111}
studfiles.net
БЕЛОРУСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ
Кафедра программного обеспечения
информационных технологий
Основы компьютерной техники
Контрольная работа №1
Студент гр. 901 021- 31
Емельянов О И
Факультет НиДО
Минск 2010
Вариант 5(№ зач. кн. 901 021-31)
1. Дано: А= 5493 , В= 3275 .
Найти: С1= A+B, C2= A-B, C3= B-A, C4= -A-B,
Для вычислений использовать дополнительный код. Результат предоставить в прямом коде.
A= 5493= 0101 0100 1001 0011
B= 3275= 0011 0010 0111 0101
Доп. Код:
A= 00.0101 0100 1001 0011
-A=11.1010 1011 0110 1101
B=00.0011 0010 0111 0101
-B=11.1100 1101 1000 1011
C1= A+B=00.0101 0100 1001 0011
00.0011 0010 0111 0101
00.1000 0111 0000 1000
0110
00.1000 0111 0110 1000 (доп.к.=пр.к.)
C2= A-B= 00.0101 0100 1001 0011
11.1100 1101 1000 1011
100.0010 0010 0001 1110
1010
00.0010 0010 0001 1000 (доп.к.=пр.к.)
С3= B-A= 00.0011 0010 0111 0101
11.1010 1011 0110 1101
11.1101 1101 1110 0010
0110
11.1101 1101 1110 1000 (доп.к.)
11.0010 0010 0001 0111
1
11.0010 0010 0001 1000 (пр.к.)
C4= -A-B= 11.1010 1011 0110 1101
11.1100 1101 1000 1011
111.0111 1000 1111 1000
1010
11.0111 1000 1001 1000 (доп.к.)
11.1000 0111 0110 0111
1
11.1000 0111 0110 1000 (пр.к.)
2. Дано: А(порядок)=-2
А(мантисса)=0,56
В(порядок)=0
В(мантисса)=-0,51
Найти С=А/В используя обратный код и метод деления без восстановления остатка. Ответ привести к нормализованному виду.
Решение:
Переведём в двоичную систему:
А= 0.56*2=1.12 1
0.12*2=0.24 0
0.24*2=0.48 0
0.48*2=0.96 0
0.96*2=1.92 1
0.92*2=1.84 1
0.84*2=1.68 1
0.5610 = 0.10001112 ~ 00.100100(мод. обр.к.)
В= 0.51*2=1.02 1
0.02*2=0.04 0
0.04*2=0.08 0
0.08*2=0.16 0
0.16*2=0.32 0
0.32*2=0.64 0
0.64*2=1.28 1
0.5110 = 0.1000012 ~ 00.100001 (мод.обр.к.)
А(ок)=00.100100
В(ок)=00.100001
-В(ок)=11.011110
A/B=(A(м)/В(м))^(А(п)-В(п))
Найдём порядок:
А(п)=-2=11.101(ок)
В(п)=0=00.000(пк)
-В(п)=11.111(ок)
С(п)= 11.101
11.111
111.100
1
11.101 (ок) => 11.010(пк)
Найдём С(м) с помощью 8 действий используя метод деления без восстановления остатка:
1). 00.100100
11.011110
100.000010
1
00.000011 1
2). 00.000110
11.011110
11.100100 0
3). 11.001001
00.100001
11.101010 0
4). 11.010101
00.100001
11.110110 0
5). 11.101101
00.100001
100.001110
1
00.001111 1
6). 00.011110
11.011110
11.111100 0
7).11.111001
00.100001
100.011010
1
00.011011 1
8). 01.110110
11.011110
100.010100 1
Исходя из знаков результатов в каждом действии получаем ответ: 1.0001011~ 1.00011-результат после округления.
Приводим в нормализованный вид:
1>x>=0.5
Произведём арифметический сдвиг вправо, соответственно изменив порядок на 1:
C(м) = 1.000110 0.100011
C(п) = 11.01011.001
Учитывая знак мантиссы В(-0,51) получаем ответ:
С(м)=1.100011 (пк)
С(п)=1.001 (пк)
studfiles.net
Задание 1.1.
Найти значения С1, С2, С3, С4, определяемые выражениями:
С1 = А+В, С2 = А-В, С3 = В- А, С4 =- А -В, где
А = 5493
В = 3275
Решение.
Представим А и В необходимо в двоично-десятичной системе:
Представим числа А и В в прямом коде :
Избавимся от операции вычитания в заданных выражениях:
Представим числа (-А) и (-В) в прямом коде :
Преобразуем все переменные в дополнительный код:
Произведем вычисления:
:
+
+
:
+
Из последней тетрады нет переноса, таким образом, это соответствует заему в нее 16 единиц (вместо необходимых 10). Следовательно, из нее необходимо удалить лишние шесть единиц, Для этого в тетраду добавляется 10 - дополнение шести до шестнадцати:
:
+
:
+
+
При образовании инверсии отрицательной тетрады в нее добавляются пятнадцать единиц. Эти 15 единиц и +1 (при формировании дополнительного кода) находятся и в сумме. А благодаря шестнадцатеричному переносу из тетрады уходит 16 единиц. Следовательно, циклический перенос 1 делать не следует.
Задание 1.2.
А {ап = -2 (порядок А), ам = + 0.56 (мантисса А)}; В{bп = 0 (порядок B), bм = -0.51 (мантисса B)}; использовать двоичный обратный код; выполнить операцию деления без восстановления остатка.
Решение.
Представим порядки и мантиссы операндов в двоичной системе счисления, сформируем модифицированные обратные коды.
,
,
,
, ,
Предварительное значение порядка частного определяется следующим образом:
Абсолютное значение предварительное значение мантиссы частного ищется за счет выполнения 8-ми тактов (n+2 = 6+2 = 8) деления следующим образом:
Разряд | Действие | Значение разряда | |
1 | 1 | ||
2 | 0 | ||
3 | 0 | ||
4 | 0 | ||
5 | 1 | ||
6 | 0 | ||
7 |
| 1 | |
8 | 0 |
Получаем, что .
Т.к. при пробном делении (разряд 1) произошло переполнение (вследствие того, что делимое по модулю больше делителя), то произведем корректировку результата. Для этого число сдвигается вправо на один разряд с добавлением единицы к порядку, равному разности порядков делимого и делителя.
Т.е.
Округлим найденное значение до 6 знаков: .
Тогда ,( с учетом ранее полученного знака частного)
В десятичной системе счисления ответ выглядит так: ,.
studfiles.net
Белорусский государственный университет информатики и радиоэлектроники.
Факультет ЗВ и ДО (дистанционное). ПОИТ.
Контрольная работа №1
по Основам компьютерной техники.
Вариант №11
Задание№1.
1.1 Найти значения С1, С2, С3, С4, определяемые выражениями:
С1 = А + В, С2 = А – В, С3 = В – А, С4 = -А – В, где А = 4556, В = -699. При выполнении задания операнды А и В представить в двоично-десятичной системе, сформировать для них прямые коды и, используя дополнительный код, по правилам двоично-десятичной арифметики, найти значения С1, С2, С3, С4. Результат должен быть представлен в прямом
коде.
Решение:
Двоично-десятичный код заданных чисел будет
А2-10 = 00.0100 0101 0101 0110.
В2-10 = 11.0000 0110 1001 1001.
Подсчитываем С1, С2, С3 и С4:
С1
00.0100 0101 0101 0110- [А]мдк
+ 11.1111 1001 0110 0111– [В]мик+1=[B]мдк+6
100.0011 1110 1011 1101
00.0011 1110 1011 1101 перенос из знакового поля игнорируется.
+ 1010 1010 1010 коррекция в тетрадах где не было переноса,
00.0011 1000 0101 0111-[С2]мдк=[С2]мпк с блокировкой переноса из тетрады.
+ 3 8 5 7
С2:
00.0100 0101 0101 0110 - [А]мдк
+ 00.0000 0110 1001 1001- [-В]мдк
00.0100 1011 1110 1111 -
+ 0110 0110 0110 - коррекция в тетрадах больше девяти
00.010100100101 0101 - [С2]мдк=[С2]мпк
+ 5 2 5 5
С3:
11.1111 1001 0110 0111- [В]ик+1=[B]дк+6
- 0110 0110 0110 0110 переводим в ДК.
11.1001 0011 0000 0001 [B]мдк
+ 11.1011 1010 1010 1010 -[A]ик+1=[A]дк+6
111.0100 1101 1010 1011 [C3]мдк
11.0100 1101 1010 1011 перенос из знакового поля игнорируется.
+ 0110 коррекция в тетрадах где был перенос.
11.1010 1101 1010 1011 [С3]мик+1=[С3]мдк+6
11.0101 0010 0101 0101 [C3]мпк
- 5 2 5 5
С4:
11.1011 1010 1010 1010 - [-A]мик+1=[-A]мдк+6
+ 00.0000 0110 1001 1001 -[-В]мдк
11.1100 0001 0100 0011 -
+ 0110 0110 0110 - коррекция в тетрадах где был перенос
11.1100 0111 1010 1001 - [С]мик+1=[С]мдк+6
11.0011 1000 0101 0111 –[C]мпк
- 3 8 5 7
Задание№2
Задание предполагает выполнение заданной операции над числами А и В, представленными с плавающей точкой.
Выполнит сложение в обратном коде.
Ап=+3 Ам=+0,9
Bп= -1 Bм=+0,55
[Ап]пк= 0,011 [Bп]пк=1,001
[Ап]обр= 0,011 [Bп]обр=1,110
[Ам]пк= 0,11100 [Bм]пк=0,10001101
[Ам]обр= 0,11100 [Bм]обр=0,10001101
Начнем с выравнивания порядков. Для этого из порядка первого числа вычитается порядок второго числа:
[Aп]обр-[Bп]обр=[Ап]обр+[-Bп]обр
[-Bп]обр=0,001
0,011 [ Aп]обр
+0,001 [-Bп]обр
0,100 разность порядков в обратном коде
0,100 разность порядков в прямом коде
Так как знак разности порядков положительный, то в качестве общего порядка, а следовательно, и предварительного значения порядка искомого результата берется порядок первого числа (Ап). Для того чтобы взять в качестве порядка второго числа порядок первого числа, т.е. увеличив его порядок на 4, необходимо мантиссу этого меньшего числа умножить на 2-4, т.е. выполнить её арифметический сдвиг на четыре разряда вправо.
После выравнивания
[Aм’]пк=0,11100
[Bм’]пк=0,00001
После выравнивания порядков можно определить предварительное значение мантиссы С как С’=[Aм’]обр+[Bм’]обр
0,11100 [Aм’]обр
+0,00001 [Bм’]обр
0,11101 [См’]обр
0,11101 [См’]пк
Нормализация не нужна.
[Сп]пк =0,011 [Cм]пк=0,11101
studfiles.net