- •1. Освоить практически возможности алгоритмов перевода чисел с использованием различных систем счисления. 5
- •2. Научиться применять способы выполнения арифметических операций с применением машинных кодов чисел. 5
- •3. Приобрести навыки практической работы с информацией во внутримашинном представлении. 5
- •1. Закрепление теоретических знаний по теме занятия. 106
- •Пз№1. Выполнение арифметических операций над числами в эвм Цель занятия:
- •Освоить практически возможности алгоритмов перевода чисел с использованием различных систем счисления.
- •Научиться применять способы выполнения арифметических операций с применением машинных кодов чисел.
- •Приобрести навыки практической работы с информацией во внутримашинном представлении. Теоретические сведения
- •Числа в системах счисления
- •Частные правила перевода
- •Арифметические действия над числами
- •Машинные коды чисел
- •Операции над машинными кодами чисел
- •Задания для работы на занятии:
- •Контрольные вопросы
- •Задание на самоподготовку:
- •Список литературы:
- •1.Освоить практически различные способы минимизации логических функций.
- •2.Научиться применять различные способы решения задач по минимизации логических функций.
- •3.Приобрести навыки практической работы по использованию различных способов минимизации логических функций.
- •Расчетный метод
- •Табличный метод
- •Задание для работы на занятии
- •Законы алгебры логики, следствия из них
- •Свойства элементарных функций.
- •Логические элементы
- •Синтез и анализ логических схем без памяти Синтез логических схем без памяти
- •Выводы:
- •1. Закрепление теоретических знаний по теме занятия;
- •2. Приобрести навыки анализа различных способов представления информации в эвм;
- •3. Совершенствование практических навыков оценки характеристик эвм.
- •Отображение чисел в разрядной сетке эвм.
- •Представление других видов информации
- •Методические рекомендации по подготовке к занятию
- •Задания для работы на занятии:
- •Разрядная функциональная группа
- •Озу типа 2d
- •Алгоритм функционирования озу типа 2d Выполнение операции "Запись";
- •Выполнение операции "Считывание";
- •Озу типа 3d
- •Постоянные зу
- •Определение основных параметров зу
- •Задание для работы на занятии:
- •Задание на самоподготовку
- •Контрольные вопросы
- •Литература
- •Пз №6. Составление алгоритмов и микропрограмм работы алу Цель занятия:
- •Краткие теоретические сведения
- •Запросы прерывания
- •Структура арифметико – логического устройства
- •Алгоритм работы алу при сложении n двоичных чисел с фиксированной запятой в дополнительном коде
- •Алгоритм работы алу при умножении чисел с фиксированной запятой
- •Задание для работы на занятии:
- •Вопросы для самоконтроля:
- •Задание на самоподготовку:
- •Литература:
- •Пз №7. Составление алгоритмов и микропрограмм работы устройства управления Цель занятия:
- •Краткие теоретические сведения об уу цвм
- •Алгоритм работы микропрограммного уу при выполнении операций сложения и умножения.
- •Методические рекомендации:
- •Задание для работы на занятии:
- •Задание для работы на самоподготовке:
- •Вопросы для самоконтроля:
- •Литература:
- •Пз №8. Разработка модулей памяти на бис
- •Закрепление теоретических знаний по теме занятия.
- •Краткие теоретические сведения о структуре памяти эвм
- •Разработка модулей памяти на бис зу
- •Задание для работы на занятии:
- •Задание на самоподготовку:
- •Контрольные вопросы:
- •Приобретение навыков решения задач, связанных с составлением отдельных микрокоманд (микроинструкций) для мпк к589.
- •. Приобретение навыков решения задач, связанных с разработкой алгоритмов и микропрограмм для мпк к589.
- •Проверка степени усвоения материала практического занятия (выполнение курсантами заданий по вариантам).
- •Методические рекомендации по проведению занятия:
- •Вопросы для контроля и самоконтроля: Проверка степени усвоения лекционного материала (устно) и уровня подготовленности курсантов к занятию (летучка).
- •Вопросы для проведения письменного контроля:
- •Задание на самоподготовку:
- •Литература:
- •Система микроопераций микропроцессора к589
- •Пз №10 решение задач разработки аппаратных средств специализированных вычислительных комплексов. Цель занятия:
- •Задание для работы на занятии.
- •Задача №1
- •Краткий теоретический материал по задаче №1
- •Предварительный выбор типов смпк.
- •Расчет цикла работы об
- •Временные характеристики смпк
- •Расчет надежностных характеристик об и аппаратных затрат для его реализации.
- •Сравнительная оценка характеристик об и окончательный выбор типа смпк и структуры об смп
- •Разработка временной диаграммы функционирования об.
- •Пример решения подзадач 1…5
- •Заданные характеристики об
- •Задача №2
- •Краткий теоретический материал по задаче №2
- •1.Обоснование и выбор структурной схемы.
- •2. Построение функциональной схемы.
- •3.Построение принципиальной схемы
- •Разработка структурной, функциональной и принципиальной схем об смп
- •Методические рекомендации:
- •Контрольные вопросы:
- •Задание на самоподготовку:
- •Список литературы:
- •Режимы работы вс
- •Алгоритмы планирования работы вс в различных режимах
- •Алгоритм планирования вычислительного процесса вс, работающей в режиме однопрограммной пакетной обработки
- •Алгоритм планирования вычислительного процесса вс, работающей в режиме классического мультипрограммирования
- •Задание для работы на занятии:
- •Методические рекомендации:
- •Вопросы для самоконтроля:
- •Расчет основных параметров алу.
- •Определение требуемого быстродействия алу.
- •Определение разрядности алу с фиксированной запятой.
- •Определение разрядности алу с плавающей запятой.
- •Определение характеристик озу
- •Пример определения основных параметров вк
- •Определим структуру и формат команд уу.
- •Регистр команд
- •Регистр базы
- •Определим характеристики озу.
- •Задание для работы на занятии.
- •7. Доложить о результатах расчетов преподавателю, ответить на контрольные вопросы. Методические указания:
- •Контрольные вопросы
- •Список литературы:
Операции над машинными кодами чисел
Все современные ЭВМ имеют достаточно развитую систему команд, включающую десятки и сотни машинных операций. Однако выполнение любой операции основано на использовании простейших микроопераций типа сложения и сдвиг. Это позволяет иметь единое арифметико-логическое устройство для выполнения любых операций, связанных с обработкой информации. Правила сложения двоичных цифр двух чисел А и В представлены в табл. 1.4.
Здесь показаны правила сложения двоичных цифр ai, bi одноименных разрядов с учетом возможных переносов из предыдущего разряда pi-1.
Подобные таблицы можно было бы построить для любой другой арифметической и логической операции (вычитание, умножение и т.д.), но именно данные этой таблицы положены в основу выполнения любой операции ЭВМ. Под знак чисел отводится специальный знаковый разряд. Знак «+» кодируется двоичным нулем, а знак «-» - единицей. Действия над прямыми кодами двоичных чисел при выполнении операций создают большие трудности, связанные с необходимостью учета значений знаковых разрядов:
Таблица 1.4
-
Значения разрядов
двоичных чисел и переноса
а , b и pi-1
Разряд
суммы
Si
Перенос в следующий разряд
Рi
ai
bi
pi-1
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
1
1
0
1
1
0
0
1
0
1
0
1
0
1
1
1
0
0
1
1
1
1
1
1
• во-первых, приходится отдельно обрабатывать значащие разряды чисел и разряды знака;
• во-вторых, значение разряда знака влияет на алгоритм выполнения операции (сложение может заменяться вычитанием и наоборот).
Во всех ЭВМ без исключения все операции выполняются над числами, представленными специальными машинными кодами. Их использование позволяет обрабатывать знаковые разряды чисел так же, как и значащие разряды, а также заменять операцию вычитания операцией сложения.
Сложение (вычитание). Операция вычитания приводится к операции сложения путем преобразования чисел в обратный или дополнительный код. Пусть числа А ≥ 0 и В ≥ 0, тогда операция алгебраического сложения выполняется в соответствии с табл. 1.5.
Таблица 1.5
-
Требуемая операция
Необходимое
преобразование
А+В
А-В
-А+В
-А-В
А+В
А+(-В)
(-А)+В
(-А)+(-В)
Скобки в представленных выражениях указывают на замену операции вычитания операцией сложения с обратным или дополнительным кодом соответствующего числа. Сложение двоичных чисел осуществляется последовательно, поразрядно в соответствии с табл. 1.4. При выполнении сложения с использованием машинных кодов необходимо соблюдать следующие правила:
1. Слагаемые должны иметь одинаковое число разрядов. Для выравнивания разрядной сетки слагаемых можно дописывать нули слева к целой части числа и нули справа к дробной части числа.
2. Знаковые разряды чисел участвуют в сложении так же, как и значащие.
3. Необходимые преобразования кодов (п.1.2.) производятся с изменением знаков чисел. Приписанные незначащие нули изменяют свое значение при преобразованиях по общему правилу.
4. При образовании единицы переноса из старшего знакового разряда, в случае использования ОК, эта единица складывается с младшим числовым разрядом. При использовании ДК единица переноса отбрасывается. Знак результата формируется автоматически, результат представляется в том коде, в котором представлены исходные слагаемые.
Пример 1.17. Сложить два числа А10=7 и В10=16
А2 = +111;
В2 = +10000.
Исходные числа имеют различную разрядность, необходимо провести выравнивание разрядной сетки:
[A2]пк = [A2]oк = [A2]дк = 0.00111;
[В2]пк = [В2]ок = [В2]дк = 0.10000.
Сложение в обратном или дополнительном коде дает один и тот же результат 0.00111
+
0.10000
С (2) = 0.10111
С(10) = +23.
Обратим внимание, что при сложении цифр отсутствуют переносы в знаковый разряд и из знакового разряда, что свидетельствует о получении правильного результата.
Пример 1.18. Сложить два числа А10 =+ 16 и В10= -7 в ОК и ДК.
В соответствии с табл. 1.5 должна быть реализована зависимость А+(-В), в которой второе слагаемое преобразуется с учетом знака
[A2]пк = 0.10000 = 0.10000 [А2]ок = 0.10000 [А2]дк = 0.10000;
[B2]пк = 1.00111 = 1.00111 [В2]ок = 1.11000 [В2]дк = 1.11001.
Сложение в OK Сложение в ДК
[А2]ок = 0.10000 [A2] = 0.10000
+[В2]ок = 1.11000 +[B2] = 1.11001
1 0.01000 10.01001
+ 1
0.01001
C2 = 0.01001 C2 = 0.01001
C10 = +9 C10 = +9
При сложении чисел в ОК и ДК были получены переносы в знаковый разряд и из знакового разряда. В случае ОК перенос из знакового разряда требует дополнительного прибавления единицы младшего разряда (см.п.4 правил). В случае ДК этот перенос игнорируется.
Пример 1.19. Сложить два числа А10 =- 16 и В10= +7 в ОК и ДК.
В соответствии с табл. 1.5 должна быть реализована зависимость
(-А)+В, в которой первое слагаемое преобразуется с учетом знака
[A2]пк = -10000 = 1.10000 [А2]ок = 1.01111 [А2]дк = 1.10000;
[B2]пк = + 00111= 0.00111 [В2]ок = 0.00111 [В2]дк = 0.00111.
Сложение в OK Сложение в ДК
[А2]ок = 1.01111 [A2] = 1.10000
+[В2]ок = 0.00111 +[B2] = 0.00111
1.10110 1.10111
При сложении чисел в ОК и ДК были получены отрицательные результаты («1» в знаковом разряде). Для перевода обратного кода отрицательного числа в прямой необходимо инвертировать значащие разряды, а знаковый разряд оставить без изменения. А для перевода дополнительного кода отрицательного числа в прямой код необходимо инвертировать значащие разряды и прибавить единицу к младшему разряда.
т.о. имеем в ПК из ОК 1.01001, а в ПК из ДК 1.01000
+ 1
т.е. [С2]пк = 1.01001 [С2]пк = 1.01001
C10 = -9 C10 = -9
Умножение. Умножение двоичных чисел реализуется в прямом коде. Рассмотрим, каким образом оно приводится к операциям сложения и сдвигам.
Пример 1.20. Умножить два числа А10 = +7 В10 = -5.
Перемножим эти числа, представленные прямыми двоичными кодами, так же, как это делается в десятичной системе.
[A2]п = 0.111 - множимое (операнд 1 – ОП1);
[В2]п = 0.101 - множитель (операнд 2 – ОП2»);
000 - обнуление регистра частичных сумм (РЧС);
+ 111 – мл. разряд ОП2 равен «1», поэтому к РЧС +ОП1;
1 такт = 111 – результирующее значение РЧС;
0111 – сдвиг РЧС вправо на один разряд;
2 такт = 00111 –очередной разряд ОП2=«0», поэтому только сдвиг;
+ 111 - очередной разряд ОП2 равен «1», поэтому к РЧС +ОП1;
3 такт = 100011 - результирующее значение РЧС;
100011 - сдвиг РЧС вправо на один разряд.
Знак произведения определяется путем сложения по «модулю 2» знаков сомножителей ( 0 0 = 0).
[С2]пк = 0.100011. Таким образом, С10 = + 35.
Нетрудно видеть, что произведение получается путем сложения частных произведений, представляющих собой разряды множимого, сдвинутые влево в соответствии с позициями разрядов множителя. Частные произведения, полученные умножением на нуль, игнорируются. Важной особенностью операции умножения n-разрядных сомножителей является увеличение разрядности произведения до п+п=2п. Знак произведения формируется путем сложения по модулю "2" знаковых разрядов сомножителей. Возможные переносы из знакового разряда игнорируются.
Деление. Операция деления, как и в десятичной арифметике, является обратной операции умножения. Эта операция также приводится к последовательности операций сложения и сдвига.
Отметим, что делимое перед операцией деления должно быть приведено к 2n-разрядной сетке. Только в этом случае при делении на n-разрядный делитель получается n-разрядное частное.
Знак частного формируется также путем сложения по «модулю 2» знаковых разрядов делимого и делителя, как это делалось при умножении.
Если в процессе вычислений значение результата превышает значение A , то может возникать переполнение разрядной сетки и получение неверного результата.
Признаками переполнения являются:
наличие переноса из значащих разрядов в знаковый и отсутствие переноса из знакового разряда («положительное» переполнение);
наличие переноса из знакового разряда и отсутствие переноса из значащих в знаковый разряд («отрицательное» переполнение).
Пример 1.21. Сложить 2 числа: А=+5 и В=+6 в четырехразрядной сетке (с учетом знакового разряда).
Сложение в OK Сложение в ДК
[А2]ок = 0.101 [A2] = 0.101
+[В2]ок = 0.110 +[B2] = 0.110
1.011 1.011
C2 = 1.100 C2 = 0.101
C10 = -4 ???(вместо +11)! C10 = -5 ??? (вместо +11)!
Пример 1.22.
Сложить 2 числа: А=-5 и В=-6 в четырехразрядной сетке (с учетом знакового разряда).
Сложение в OK Сложение в ДК
[А2]ок = 1.010 [A2] = 1.011
+[В2]ок = 1.011 +[B2] = 1.100
10.101 10.111
1
0.110
C2 = 0.110 С2 = 0.111
C10 = +6 ??? (вместо -11)! C10 = +7 ??? (вместо -11)!
Как видно из примеров, при сложении положительных чисел получается отрицательный результат и наоборот. Это объясняется тем, что в трех значащих разрядах максимальное число по модулю может быть семь, а в примерах необходимо записать соответственно С=+11 и С=-11.