МИРЭА кафедра МОВС


Система команд
Одной из целей разработчиков системы VAX было создание системы команд, симметричной в отношении различных типов данных. Значительная часть мнемонических имен команд формируется с помощью комбинации следующих элементов: - префикса, определяющего тип операции; - суффикса, определяющего тип операндов; - модификатора (в ряде команд), задающего число операндов. Например, команда ADDW2 является операцией сложения с двумя операндами, каждый из которых занимает длинное слово. Аналогично команда MULL3 является операцией умножения с тремя операндами, каждый из которых занимает одно слово. Команда CVTWL определяет операцию преобразования слова в длинное слово (в последнем случае подразумевается использование двух операндов). В большинстве команд операнд может располагаться в регистре, в памяти или непосредственно в самой команде. Один и тот же код операции используется независимо от месторасположения операндов. Этот подход является более гибким по сравнению с подходом в System/370, который требует различных кодов операций в зависимости от месторасположения операндов. VAX обеспечивает все обычные типы команд для вычислений, пересылки данных, преобразования, сравнения, ветвления и т. п. Кроме того существует ряд более сложных команд, чем те, которые имеются в большинстве ЭВМ. Во множестве случаев такие операции являются аппаратной реализацией часто используемых последовательностей команд для увеличения эффективности и скорости их выполнения. Например, VAX предоставляет команды групповой загрузки и запоминания регистров, а также команды для работы с очередями и строками битов переменной длины. Предусмотрены мощные команды для вызова и возврата из процедур. С помощью одной-единственной команды осуществляется запоминание содержимого заданной группы регистров, передача списка фактических параметров процедуре, управление указателями стека, фрейма и списка, аргументов, а также установка маски для предотвращения ошибок в арифметических операциях. Более детальную информацию о системе команд VAX можно найти в DEC [1981]