Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л-3СС и СК.doc
Скачиваний:
15
Добавлен:
16.09.2019
Размер:
1.37 Mб
Скачать
    1. 3.3. Особенности команд для чисел с фиксированной запятой

По функциональному признаку все команды ЦСП можно разделить на 6 групп: пересылки данных, загрузки и хранения, арифметические, логические, команды перехода и сервисные команды. Мнемоники и описание этих команд для чисел с фиксированной запятой приведены в приложении, поэтому здесь достаточно обратить внимание лишь на особенности (если они есть) их применения.

            1. Команды пересылки данных MVК и MVКН применяются для ввода исходных 16-разрядных данных (полуслов). Для ввода 32-разрядного числа (слова) следует использовать обе эти команды, причем в строго определенной последовательности. Сначала командой MVК ввести младшее полуслово, а затем командой MVКН – старшее полуслово, указав в поле операндов все слово.

            2. Команды загрузки (LD) и хранения (ST) применяются для загрузки данных из внутренней памяти в РОН и наоборот, соответственно. Последняя буква в мнемонике команд указывает объем данных, участвующих в обмене: W – слово, H – полуслово и В – байт. В двух последних случаях и использовании команды LD старшие разряды регистра-приемника заполняются знаком (старшим разрядом полуслова или байта).

Поле операндов этих команд состоит из двух частей – адресной части и регистра-приемника или регистра-источника данных. Адресная часть поля операндов обозначается символом «*» и в командах LD начинает это поле, а в командах ST завершает его.

Команды загрузки/хранения поддерживают базирование и индексацию. Индексация указывается одним знаком операции содержимого регистра адреса и смещения, а базирование – двумя повторяющимися (дублем) знаками. Базирование сочетается с постдекрементом/предек-рементом и постинкрементом/прединкрементом. В случае предекремента или преинкремента дубль знака указывается перед именем регистра адреса, а в случае постдекремента или постинкремента – после имени регистра адреса.

3. Арифметические команды.

Результат вычисления абсолютной величины числа (команда ABS) представляется в дополнительном коде.

При выполнении команд умножения знаковые операнды перемножаются в прямом коде, а результат представляется в дополнительном коде.

4. Логические команды.

Если в команде сравнения используется 40-разрядный операнд, то в операции участвует только число, хранящееся в четном регистре пары.

При арифметическом сдвиге влево и логическом сдвиге освободившиеся разряды регистра-приемника заполняются нулями, а при арифметическом сдвиге вправо – знаком сдвигаемого числа.

5

Такт/вып.

пакет

Счетчик

команд

Командная строка

0

1000 0000

B .S2 L0

1

1000 0004

1000 0008

ADD .L1 A1,A2,A3

|| ADD .L2 В1,В2,В3

2 (6)

1000 000С

1000 0010

L0: MPY .M1X A3,B3,A4

|| SUB .D1 A5,A6,A6

3 (7)

1000 0014

MPY .M1 A3,A6,A5

4

1000 0018

MPY .M1 A6,A7,A8

5

1000 001С

SHR .S1 A4,15,A4

1000 0020

ADD .D1 A4,A6,A4

Рис. 55. Переход по метке

. Команда перехода может выполняться по метке (рис. 55) или по содержимому регистра. В любом случае в слотах задержки можно размещать другие команды. Поскольку команда требует на выполнение 5 слотов задержки, переход реализуется только в шестом такте. При этом во втором случае содержимое регистра переписывается в счетчик команд, определяя тем самым строку программы, на которую будет произведён переход. Последней командной строкой пакета выборки рис. 55 будет 3 (7) строка.

6. Выполнение сервисных команд вполне понятно из их описания.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]