Реферат Курсовая Конспект
Часть1 РАБОТА С ДВОИЧНЫМИ ЧИСЛАМИ И ВЫПОЛНЕНИЕ АРИФМИТИЧЕСКИХ ОПЕРАЦИЙ НАД НИМИ - раздел Образование, Лабораторная Работа №1 Работа С Двоичными Числами И ...
|
ЛАБОРАТОРНАЯ РАБОТА №1
РАБОТА С ДВОИЧНЫМИ ЧИСЛАМИ И ВЫПОЛНЕНИЕ АРИФМИТИЧЕСКИХ ОПЕРАЦИЙ НАД НИМИ
Часть1
АЛГЕБРАИЧЕСКОЕ СЛОЖЕНИЕ ДВОИЧНЫХ ЧИСЕЛ
Цель работы: приобретение практических навыков применения методов кодирования и алгебраического сложения двоичных чисел.
1. Методические указания
При подготовке к лабораторной работе студент должен, используя контрольные вопросы, повторить изученный ранее материал по переводу чисел из одной системы счисления в другую.
Знание форм представления и кодирования чисел имеет фундаментальное значение для понимания принципов обработки информации в ЭВМ. Алгебраическое сложение чисел в обратном и дополнительном кодах является в дальнейшем базовой операцией при выполнении операций умножения и деления. Правила, применяемые при алгебраическом сложении кодов чисел, имеют строгое теоретическое обоснование, которое необходимо знать студентам.
Материал, изученный на лабораторной работе, широко применяется как в настоящем курсе. Так и в других специальных дисциплинах, а также в курсовом и дипломном проектировании.
При подготовке к работе рекомендуется использовать литературу [1, с. 20-49].
2. Контрольные вопросы
1) Система счисления.
2) Позиционные и непозиционные системы счисления.
3) Основные системы счисления.
4) Представление чисел в виде полинома.
5) Перевод чисел из одной системы счисления в другую.
6) Формы представления чисел в ЭВМ.
7) Диапазон представления чисел в заданной разрядной сетке.
8) Прямой, обратный и дополнительный коды для представления чисел в ЭВМ.
9) Связь обратного и дополнительного кодов.
10) Правило алгебраического сложения чисел в обратном коде (доказательство).
11) Правило алгебраического сложения чисел в дополнительном коде (доказательство).
12) Признаки переполнения разрядной сетки при алгебраическом сложении чисел в ЭВМ.
13) Модифицированные коды для представления чисел в ЭВМ.
14) Алгебраическое сложение чисел в модифицированных кодах.
15) Признаки переполнения разрядной сетки в модифицированных кодах в ЭВМ.
3. Задание к лабораторной работе
1) Используя данные таблицы 1.1, найти алгебраические суммы ±а, ±в в обратном и дополнительном кодах, если длина разрядной сетки равна l двоичных разрядов. Сделать выводы о наличии или отсутствии переполнения. Проверить результат переводом в десятичную систему счисления. Оценить погрешность результата.
2) Используя данные таблицы 1.1, найти алгебраические суммы ±x, ±y в модифицированных обратном и дополнительном кодах, если длина разрядной сетки равна l двоичных разрядов. Сделать выводы о наличии или отсутствии переполнения.
3) Оценить диапазон представления чисел с плавающей запятой, если для представления мантиссы отведено n двоичных разрядов, для представления порядка – m двоичных разрядов, основание характеристики равно S. Исходные данные приведены в таблице 1.1.
4. Пример выполнения сложения чисел в обратном и дополнительном кодах.
Пусть а = 0,74; b = -0,39; l = 7
Переводим числа в двоичный код:
0,74*2=1,48 0,39*2=0,78
0,48*2=0,96 0,78*2=1,56
0,96*2=1,92 0,56*2=1,12
0,92*2=1,84 0,12*2=0,24
0,84*2=1,68 0,24*2=0,48
0,68*2=1,36 0,48*2=0,96
0,36*2=0,72 0,96*2=1,92
Т.к. а>0, то прямой код будет равен обратному и дополнительному коду, таким образом
а пр.код = 0.1011110 а обр.код = 0.1011110 а доп.код = 0.1011110
-а пр.код = 1.1011110 -а обр.код = 1.0100001 -а доп.код = 1.0100010
Т.к. b<0, обратный код будет равен инверсии прямого кода; дополнительный код равен обратному коду +1.
b пр.код = 1.0110001 b обр.код = 1.1001110 b доп.код = 1.1010010
-b пр.код = 0.0110001 - b обр.код = 0.0110001 - b доп.код = 0.0110001
5. Содержание отчета
1) Титульный лист.
2) Определение кодов для представления чисел в ЭВМ.
3) Правила выполнения алгебраического сложения над кодированными числами.
4) Признаки переполнения разрядной сетки при алгебраическом сложении.
5) Результаты выполнения задания к лабораторной работе.
Разделы 1), 2), 3), 4) студенты должны выполнить при подготовке к лабораторной работе.
Таблица 1.1
Варианты заданий к лабораторной работе
№ п/п | а | в | l | x | y | n | m | S |
-0.37 | 0.68 | 0.15 | 0.96 | |||||
0.83 | -0.19 | 0.17 | 0.84 | |||||
-0.27 | 0.99 | 0.35 | 0.88 | |||||
0.95 | -0.11 | 0.33 | 0.79 | |||||
-0.35 | 0.90 | 0.47 | 0.69 | |||||
0.79 | -0.30 | 0.77 | 0.63 | |||||
-0.07 | 0.97 | 0.81 | 0.45 | |||||
0.81 | 0.29 | 0.56 | 0.99 | |||||
-0.75 | 0.65 | 0.68 | 0.37 | |||||
0.81 | -0.26 | 0.19 | 0.83 | |||||
-0.69 | 0.57 | 0.99 | 0.27 | |||||
-0.45 | 0.72 | 0.11 | 0.95 | |||||
0.93 | -0.94 | 0.90 | 0.35 | |||||
-0.81 | 0.30 | 0.79 | ||||||
0.97 | -0.64 | 0.97 | 0.07 | |||||
0.79 | -0.77 | 0.29 | 0.81 | |||||
-0.43 | 0.82 | 0.65 | 0.75 | |||||
0.89 | -0.16 | 0.26 | 0.81 | |||||
-0.95 | 0.23 | 0.57 | 0.69 | |||||
0.74 | -0.39 | 0.77 | 0.79 | |||||
-0.66 | 0.73 | 0.72 | 0.45 | |||||
0.64 | -0.85 | 0.94 | 0.93 | |||||
-0.96 | 0.15 | 0.59 | 0.81 | |||||
0.84 | -0.17 | 0.64 | 0.97 | |||||
-0.88 | 0.35 | 0.82 | 0.43 |
Часть №2
АЛГОРИТМЫ УМНОЖЕНИЯ ДВОИЧНЫХ ЧИСЕЛ
Цель работы: приобретение практических навыков умножения двоичных чисел в прямом, обратном и дополнительном кодах.
Контрольные вопросы
1. Основные способы умножения чисел с фиксированной точкой.
2. Основные алгоритмы умножения чисел с фиксированной точкой.
3. Умножение прямого кода на 2±k.
4. Умножение обратного и дополнительного кодов на 2±k.
5. Умножение дополнительных кодов.
6. Умножение обратных кодов.
7. Умножение чисел, представленных в форме с плавающей точкой.
8. Операционные элементы устройств для умножения чисел с фиксированной точкой.
9. Микрооперации и логические условия в устройствах умножения чисел с фиксированной точкой.
Задание к лабораторной работе
1. Используя данные таблицы 2.1, вычислить произведения чисел ±x и ±y с двойной точностью, если длина разрядной сетки операндов без учета знаковых разрядов равна 4-м двоичным разрядам. Процесс вычислений нужно представить в трассировочных таблицах следующего вида:
Микрооперация / логическое условие | Состояние операционного элемента | ||
РгМт | РгМн | НСМ | СчТ |
После вычислений проверить правильность полученных результатов.
2. Для ситуаций, отмеченных в таблице 2.1 звездочкой, построить структурную схему и микропрограмму операционного устройства умножения.
3. Используя данные таблицы 2.2, вычислить произведение X и Y, представленных в форме с плавающей запятой. Длина мантиссы в прямом коде без знака – 4 двоичных разряда, длина порядка в прямом коде без знака – 3 двоичных разряда, основание характеристики равно 2. оценить погрешность произведения, вызванную ограниченной длиной разрядной сетки.
4. Содержание отчета
1. Титульный лист.
2. Алгоритмы умножения.
3. Результаты выполнения заданий к лабораторной работе.
Разделы 1, 2 студент должен выполнить при подготовке к лабораторной работе.
Таблица 2.1
Варианты заданий к лабораторной работе 2
№ п/п | X | Y | Алгоритм / код | |||
X∙Y | X∙(-Y) | -X∙Y | (-X)∙(-Y) | |||
0.96 | 0.39 | 1/ПК* | 2/МОК | 3/МОК | 4/МДК | |
0.41 | 0.94 | 2/ПК* | 3/МДК | 4/МДК | 1/МОК | |
0.92 | 0.43 | 3/ПК* | 4/МОК | 1/МОК | 2/МДК | |
0.45 | 0.90 | 4/ПК* | 1/МДК | 2/МДК | 3/МОК | |
0.88 | 0.47 | 1/ПК | 2/МОК* | 3/МОК | 4/МДК | |
0.49 | 0.86 | 2/ПК | 3/МДК* | 4/МДК | 1/МОК | |
0.84 | 0.51 | 3/ПК | 4/МОК* | 1/МОК | 2/МДК | |
0.53 | 0.82 | 4/ПК | 1/МДК* | 2/МДК | 3/МОК | |
0.80 | 0.55 | 1/ПК | 2/МОК | 3/МОК* | 4/МДК | |
0.57 | 0.78 | 2/ПК | 3/МДК | 4/МДК* | 1/МОК | |
0.76 | 0.59 | 3/ПК | 4/МОК | 1/МОК* | 2/МДК | |
0.61 | 0.74 | 4/ПК | 1/МДК | 2/МДК* | 3/МОК | |
0.72 | 0.63 | 1/ПК | 2/МОК | 3/МОК | 4/МДК* | |
0.65 | 0.70 | 2/ПК | 3/МДК | 4/МДК | 1/МОК* | |
0.68 | 0.67 | 3/ПК | 4/МОК | 1/МОК | 2/МДК* | |
0.69 | 0.66 | 4/ПК | 1/МДК | 2/МДК | 3/МОК* | |
0.64 | 0.71 | 1/ПК* | 2/МОК | 3/МОК | 4/МДК | |
0.73 | 0.62 | 2/ПК | 3/МДК* | 4/МДК | 1/МОК | |
0.60 | 0.75 | 3/ПК | 4/МОК | 1/МОК* | 2/МДК | |
0.77 | 0.58 | 4/ПК | 1/МДК | 2/МДК | 3/МОК* | |
0.56 | 0.79 | 1/ПК | 2/МОК* | 3/МОК | 4/МДК | |
0.81 | 0.54 | 2/ПК* | 3/МДК | 4/МДК | 1/МОК | |
0.52 | 0.83 | 3/ПК | 4/МОК | 1/МОК* | 2/МДК | |
0.85 | 0.51 | 4/ПК | 1/МДК | 2/МДК* | 3/МОК | |
0.48 | 0.87 | 1/ПК | 2/МОК | 3/МОК | 4/МДК* |
Таблица 2.2
Варианты заданий к лабораторной работе 2
№ п/п | X | Y | Алгоритм | № п/п | X | Y | Алгоритм |
4,37 | 9,84 | 3,64 | 4,89 | ||||
9,32 | 5,41 | 6,64 | 5,09 | ||||
8,51 | 5,29 | 4,02 | 1,18 | ||||
6,99 | 1,92 | 1,99 | 7,53 | ||||
5,16 | 6,43 | 5,63 | 7,17 | ||||
1,67 | 4,13 | 7,83 | 3,05 | ||||
7,12 | 3,16 | 6,02 | 6,27 | ||||
3,97 | 3,98 | 2,21 | 3,63 | ||||
8,87 | 6,43 | 5,44 | 9,88 | ||||
1,09 | 6,47 | 7,36 | 1,13 | ||||
1,26 | 7,14 | 8,06 | 3,88 | ||||
8,56 | 5,14 | 1,12 | 2,81 | ||||
2,74 | 7,39 |
Примеры решения алгоритмов умножения
1. Вычислить x*y в прямом коде по алгоритму 1.
Микрооперация / логическое условие | Состояние операционных элементов | |||
РгМт | РгМн | НСМ | СчТ | |
Установка | 0.1000 | 0.1110 | 0.00000000 | |
НСМ[8].(0.R1(НСМ[0:7])) РгМт[5].(0.R1 [0:4]) | 0.0100 | 0.1110 | 0.00000000 | |
НСМ[8].(0.R1(НСМ[0:7])) РгМт[5].(0.R1 [0:4]) | 0.0010 | 0.1110 | 0.00000000 | |
НСМ[8].(0.R1(НСМ[0:7])) РгМт[5].(0.R1 [0:4]) | 0.0001 | 0.1110 | 0.00000000 | |
Результат | 0.0000 | 0.1110 | 0.01110000 |
2. Вычислить x*(-y) в обратном коде по алгоритму 2.
-0.4710=1.10002пк=1.01112ок
Микрооперация / логическое условие | Состояние операционных элементов | |||
РгМт | РгМн | НСМ | СчТ | |
Установка | 1.0111 | 0.00001110 | 0.00000000 | |
РгМн[8].(L1(РгМн[0:7]).0) РгМт[5].(1.R1[0:4]) | 1.1011 | 0.00011100 | 0.00001110 | |
РгМн[8].(L1(РгМн[0:7]).0) РгМт[5].(1.R1[0:4]) | 1.1101 | 0.00111000 | 0.00101010 | |
РгМн[8].(L1(РгМн[0:7]).0) РгМт[5].(1.R1[0:4]) | 1.1110 | 0.01110000 | 0.01100010 | |
Результат | 1.1111 | 0.11100000 | 0.01100010 |
Коррекция результата
0 0 1 1 0 0 0 1 0
0 0 0 0 0 1 1 1 0
0 0 1 1 1 0 0 0 0
1 0 0 0 1 1 1 1 1
1 1 0 0 0 1 1 1 1
1 0 1 1 1 0 0 0 0
3. Вычислить (-x)*y в обратном коде по алгоритму 3.
Микрооперация / логическое условие | Состояние операционных элементов | |||
РгМт | РгМн | НСМ | СчТ | |
Установка | 0.1000 | 1.0001 | 0.00000000 | |
НСМ[8].(L1(НСМ[0:7]).1) РгМт[5].(L1[0:4].0) | 0.0000 | 1.0001 | 1.11100011 | |
НСМ[8].(L1(НСМ[0:7]).1) РгМт[5].(L1[0:4].0) | 0.0000 | 1.0001 | 1.11000111 | |
НСМ[8].(L1(НСМ[0:7]).1) РгМт[5].(L1[0:4].0) | 0.0000 | 1.0001 | 1.10001111 | |
Результат | 0.0000 | 1.0001 | 1.10001111 |
4. Вычислить (-x)*(-y) в дополнительном коде по алгоритму 4.
Микрооперация / логическое условие | Состояние операционных элементов | |||
РгМт | РгМн | НСМ | СчТ | |
Установка | 1.1000 | 1.10010000 | 0.00000000 | |
РгМн[8].(1.R1(РгМн[0:7])) РгМт[5].(L1[0:4].0) | 1.0000 | 1.11001000 | 1.10010000 | |
РгМн[8].(1.R1(РгМн[0:7])) РгМт[5].(L1[0:4].0) | 1.0000 | 1.11100100 | 1.10010000 | |
РгМн[8].(1.R1(РгМн[0:7])) РгМт[5].(L1[0:4].0) | 1.0000 | 1.11110010 | 1.10010000 | |
Результат | 1.0000 | 1.11111001 | 1.10010000 |
Коррекция результата
1 1 0 0 1 0 0 0 0
0 1 1 1 0 0 0 0 0
0 0 1 1 1 0 0 0 0
Часть №3
АЛГОРИТМЫ ДЕЛЕНИЯ ДВОИЧНЫХ ЧИСЕЛ
Цель работы: приобретение практических навыков деления двоичных чисел в прямом, обратном и дополнительном кодах.
1. Методические указания
При делении чисел с фиксированной запятой в ЭВМ наиболее распространенным является метод, основанный на вычитании делителя из делимого. При этом для деления применяются два алгоритма:
а) алгоритм деления с восстановлением остатка;
б) алгоритм деления без восстановления остатка.
На операционных элементах должны выполняться микрооперации:
а) прием делимого в сумматор (возможно с изменением знака);
б) удвоение предыдущего остатка;
в) вычитание делителя из удвоенного остатка;
г) получение обратного (дополнительного) кода;
д) запоминание цифр и знака частного;
е) вычисление знака частного;
ж) подсчет числа выполненных тактов деления.
При выполнении деления на операционных элементах должны вычисляться логические условия:
а) значение цифры частного;
б) признак окончания операции деления
в) признак переполнения разрядной сетки.
При подготовке к лабораторной работе рекомендуется использовать литературу [4, гл.5].
2. Контрольные вопросы
1. Алгоритм деления модулей чисел с восстановлением остатка.
2. Фиксация переполнения разрядной сетки при делении.
3. Алгоритм деления модулей чисел без восстановления остатка.
4. Алгоритм деления чисел со знаками в обратном или дополнительном кодах.
5. Алгоритмы деления с определением цифр частного по знаку остатка.
6. Операционные элементы устройства для деления.
7. Микрооперации, выполняемые в устройстве для деления.
8. Логические условия, вычисляемые в устройстве для деления.
3. Задание к лабораторной работе
1. Используя данные таблицы 3.3 и 3.4, разделить (±X)2 и (±Y)2. Процесс вычислений представить в трассировочных таблицах вида:
Микрооперация/логическое условие | Состояние операционного элемента | |||||||||
НСМ | РгЧт | СчТ | РгДм | РгДт | ||||||
Знак Дм | + | + | - | - | ||||||
Знак Дт | + | - | + | - | ||||||
Основная операция | 2R + (-ДТ) | 2R + ДТ | 2R + ДТ | 2R + (-ДТ) | ||||||
Определение цифры частного | R < 0 ЧТ = 0 R > 0 ЧТ = 1 | R < 0 ЧТ = 0 R > 0 ЧТ = 1 | R < 0 ЧТ = 1 R > 0 ЧТ = 0 | R < 0 ЧТ = 1 R > 0 ЧТ = 0 | ||||||
Таблица 3.1
Знак Дм | + | + | - | - |
Знак Дт | + | - | + | - |
Основная операция | 2!R + (-ДТ) | 2!R + ДТ | 2R + ДТ | 2R + (-ДТ) |
Определение цифры частного | R < 0 ЧТ = 0 R > 0 ЧТ = 1 | R < 0 ЧТ = 1 R > 0 ЧТ = 0 | R < 0 ЧТ = 0 R > 0 ЧТ = 1 | R < 0 ЧТ = 1 R > 0 ЧТ = 0 |
Таблица 3.2
Студенты должны проверить правильность полученных результатов.
2. Разработать структурную схему и микропрограмму операционного устройства для деления. Варианты заданий приведены в таблице 3.5.
4. Содержание отчета
1. Титульный лист.
2. Алгоритмы деления.
3. Результаты выполнения заданий к лабораторной работе.
Разделы 1, 2 студент должен выполнить при подготовке к лабораторной работе.
Таблица 3.3
Выбор способа деления чисел
SgX | SgY | КОД | Алгоритм | Правило |
+ | + | МДК | БВО | Табл. 3.1 |
+ | - | МОК | СВО | Табл. 3.1 |
- | + | МОК | БВО | Табл. 3.1 |
- | - | МДК | СВО | Табл. 3.1 |
БВО – алгоритм без восстановления остатка
СВО – алгоритм с восстановлением остатка
Таблица 3.4
Варианты заданий к лабораторной работе 3
№ п/п | X | Y | № п/п | X | Y |
0,1000 | 0,1001 | 0,1000 | 0,1011 | ||
0,1001 | 0,1010 | 0,1001 | 0,1100 | ||
0,1010 | 0,1011 | 0,1010 | 0,1101 | ||
0,1011 | 0,1100 | 0,1011 | 0,1110 | ||
0,1100 | 0,1101 | 0,1100 | 0,1111 | ||
0,1101 | 0,1110 | 0,1000 | 0,1100 | ||
0,1110 | 0,1111 | 0,1001 | 0,1101 | ||
0,1000 | 0,1010 | 0,1010 | 0,1110 | ||
0,1001 | 0,1011 | 0,1011 | 0,1111 | ||
0,1010 | 0,1100 | 0,1000 | 0,1101 | ||
0,1011 | 0,1101 | 0,1001 | 0,1110 | ||
0,1100 | 0,1110 | 0,1010 | 0,1111 | ||
0,1101 | 0,1111 |
Таблица 3.5
Порядковый номер студента в списке | Код | Алгоритм | Правило |
1, 9, 17, 25 | МДК | БВО | Таблица 3.1 |
2, 10, 18 | Таблица 3.2 | ||
3, 11, 19 | МДК | СВО | Таблица 3.1 |
4, 12, 20 | Таблица 3.2 | ||
5, 13, 21 | МОК | БВО | Таблица 3.1 |
6, 14, 22 | Таблица 3.2 | ||
7, 15, 23 | МОК | СВО | Таблица 3.1 |
8, 16, 24 | Таблица 3.2 |
– Конец работы –
Используемые теги: часть1, работа, двоичными, числами, Выполнение, АРИФМИТИЧЕСКИХ, операций, над, ними0.124
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Часть1 РАБОТА С ДВОИЧНЫМИ ЧИСЛАМИ И ВЫПОЛНЕНИЕ АРИФМИТИЧЕСКИХ ОПЕРАЦИЙ НАД НИМИ
Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов