Система команд

Команды процессора подразделяются на простые и комплексные. Первые выполняют одно действие, тогда как вторые задают трехадресную арифметическую операцию над данными в регистрах одновременно с операцией обмена данными с памятью и (или) модификацией адресных регистров.

При обращении к памяти используются следующие виды адресации: базовая по содержимому АР, базовая по содержимому РОНа, автоинкрементная или автодекрементная адресация по любому АР, базово-индексная адресация по двум АР. В МП "Квант-20" добавлена базово-индексная адресация с 8-разрядным смещением, задаваемым в поле команды.

Для упрощения устройства управления и обеспечения большей гибкости в программах в микропроцессоре реализована следующая схема выполнения условных и безусловных переходов. В случае условного перехода специальная команда проверяет соответствие флага признаков результата арифметической операции одному из 16 возможных условий перехода. Если имеет место соответствие, то следующая команда не выполняется, а как бы подменяется пустой операцией (NOP). Причем, проверка условия осуществляется на фоне выполнения арифметических операций.

Чтобы не нарушить работу конвейера (избежать пропуска конвейерных циклов), безусловный переход выполняется по принципу "отложенного перехода". В конвейере сначала отрабатывается команда, следующая за командой перехода, а затем выполняется переход. Так же выполняется и обращение к подпрограммам.

Конвейеризация внутренних процессов и совмещение во времени выполнения операций в различных функциональных устройствах микропроцессора позволяют выполнять до четырех команд за один такт.

Будет полезно почитать по теме: