Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
20
Добавлен:
10.02.2015
Размер:
171.52 Кб
Скачать

Министерство общего и профессионального образования Российской Федерации

Московский государственный технический Университет им. Н.Э.Баумана

Типовые машинные операции.

Методические указания к лабораторной работе по курсу

"Архитектура ЭВМ"

Москва 2002 г.

1.Теоретическая часть.

Машинная операция - это действие инициируемое одной командой и реализуемое оборудованием ЭВМ. Разнообразие типов данных, форматов их представления и действий, необходим для их обработки и управления вычислениями в ЭВМ определяет набор операций

F={ f1,…,fm } ,

С набором операций связана система команд, инициирующих соответствующие операции и определяющих адреса операндов.

Набор операции в ЭВМ должен обладать двумя свойствами:

I. Функциональной полнотой - это достаточность набора опера­ций для описания алгоритмов из заданного класса. Строго доказано, что функционально полными являются наборы булевых функций:

а) и, не в) не, и, или д) -не,

в) или, не г) и - не

а также алгоритмическая система Поста

{:=0,:=1,=0},

состоящая из операций присваивания "О" и "I" и предиката "=0", с помощью которого анализируется на "О" значение двоичной перемен­ной.

Наборы операции в ЭВМ всегда являются функционально полными.

Эффективность набора операций - это степень соответствия набора операций назначению ЭВМ и требованиям производительности.

Эффективность набора характеризуют затратами оборудования и затратами на реализацию алгоритма.

Затраты оборудования зависят от сложности операций, входящих в набор. При этом чем более сложнее операции используются в ЭВМ, тем короче нужны программы для реализации алгоритмов, и, следовательно, тем меньше требуется емкость памяти и меньше вре­мя решения.

В настоящее время набор операции выбирается на основе опыта разработки и эксплуатации ЭВМ.

Классификация машинных операций

Все машинные операции подразделяют на следующие классы:

I. Арифметические и логические операции

2. Посылочные

3. Переходы

4. Операции ввода-вывода

5. Системные операции

Арифметические и логические операции служат для вычисления значений функции одной или нескольких переменных. К ним относятся: сложе­ние, вычитание, умножение, деление, V , , сравнение, сдвиги, переводы в другую систему счисления. В зависимости от формата данных выделяют: операции с фиксированной занятой, операции с плавающей запятой и операции десятичной арифметики, В зависи­мости от форматов слов выделяются логические операции над словами фиксированной длины и полями переменной длины.

Наиболее полный набор операций в ЭВМ общего назначения.

В специализированных ЭВМ набор операций обычно ограничивается: +, - (с фиксированной запятой),   сдвиги, и более сложные операции реализуются подпрограммами.

Посылочные операции служат для передачи информации между процессором и ОП. Типовые операции: загрузить (передачи слова из ОП в процессор) и записать (передача слова из процессора в ОП). Для увеличения быстродействия ЭВМ вводят дополнительные операции:

передача слова с обратным знаком, модуля, групповая передача.

Переходы - это операции, используемые для выполнения команд в порядке, отличном от естественного. Они обеспечивают передачу управления любой команде программы. Переход может быть безуслов­ным или по условию - признаку перехода. Типичные признаки перехода:0 , < 0 ,>0. Для увеличения производительности ЭВМ иногда используют специальные операции: переход по счетчику, переход по индексу, переход с возвратом.

Операции перехода по счетчику и по индексу служат для орга­низации циклов, а переход с возвратом - для работа с подпрограм­мами и стандартными программами.

Операции переходе по счетчику обеспечивает вычитание I из переменной и проверку результата на "0". Если результат не равен 0, выполняется переход к команде с адресом, указанным в команде перехода по счетчику. При нулевом результате - выполняется следую­щая по порядку команда. За счет этого обеспечивается n - крат­кий переход к команде, с которой начинается цикл, и выход из цик­ла на продолжение программы.

Переход по индексу выполняется аналогично: операция перехода изменяет специальную переменную - индекс - на значение, заданной переменной, и сравнивает значение индекса с предельным зна­чением. Если индекс меньше (больше) заданного, то выполняется переход по указанному адресу, в противном случае организуется выход из цикла путем перехода к команде, следующей за командой перехода по индексу.

Переход с возвратом выполняется так. Формируется адрес команды, следующей за командой перехода с возвратом - адрес воз­врата, который загружается в заданную ячейку памяти, после че­го выполняется переход к команде с адресом, заданным в команде перехода. Поскольку адрес возврата запомнен, то после выполнения некоторой совокупности команд - подпрограммы - имеется возможность возвратиться в основную программу и продолжить вычисления начиная от команды, следующей за командой возврата. Операции перехода относятся к часто используемым операциям. Поэтому они широко представлены во всех ЭВМ.

В современных мини- и микро-ЭВМ для организации переходов с возвратом используется стековая память (стек). При этом по команде переход с возвратом в стек заносится адрес команды, следующей за командой перехода с возвратом – адрес возврата, после чего осуществляется переход к команде с адресом, заданным в команде перехода. Для возвращения на продолжение вычислений, например, после выполнения подпрограммы, достаточно считать адрес возврата из стека продолжить вычисления.

Операции ввода-вывода служат для передачи информации между ОП и ВУ (ВЗУ и УВВ). Операция ввода-вывода инициирует работу ВУ. Состав этих операций определяется способом подключения ВУ к ОП или процессору, т.е. структурой ЭВМ.

Системные операции - предназначены для управления режимами работы ЭВМ. Они инициируют и прекращают выполнение программы и

организуют мультипрограммную и многомашинную обработку информации.

2. Порядок выполнения лабораторной работы.

    1. Загрузить пакет "CUU" и учебный пример.

    2. Разработать машинные операции условного и безусловного переходов.

    3. Модернизировать учебный пример таким образом, чтобы выполнялись разработанные машинные операции.

    4. На модели проверить работоспособность операций.

    5. Разработать машинные операции переход с возвратом (условные и безусловные) и проверить их работоспособность.

    6. Разработать операции перехода для организации циклов и проверить их работоспособность.