Программная архитектура Alpha. Характеристики программной архитектуры Alpha. Использование регистров в Alpha Linux. Команды архитектуры Alpha, страница 5

AMASK

Проверка наличия архитектурных расширений

CALL_PAL

Вызвать подпрограмму из Privileged Architecture Library

ECB

Вытеснить блок кэш-памяти

EXCB

Exception barrier – дождаться завершения обработки всех исключений

FETCH

Предвыборка 512-байтного блока из памяти

FETCH_M

Предвыборка 512-байтного блока с намерением записи

IMPLVER

Получить код версии процессора

MB

Memory barrier – дождаться завершения команд чтения/записи

PREFETCH

Предвыборка данных: LDL r31, addr

PREFETCH_EN

Предвыборка данных с последующим вытеснением: LDQ r31, addr

PREFETCH_M

Предвыборка данных с намерением записи: LDS r31, addr

PREFETCH_MEN

Предвыборка с намерением записи и последующим вытеснением: LDT r31, addr (только 21364)

RPCC

Прочитать значение счетчика тактов процессора

TRAPB

Дождаться завершения всех арифметических операций

WH64

Указание, что 64-байтный блок памяти будет перезаписан

WH64EN

64-байтный блок памяти будет перезаписан и вытеснен из кэш-памяти (только 21364)

WMB

Write memory barrier – дождаться завершения команд записи

Команды поддержки VAX

RC

Прочитать и очистить флаг прерываний

RS

Прочитать и установить флаг прерываний

Командымультимедиа (MVI – Motion Video Instructions)

MINUB8

Векторный беззнаковый минимум (8 байт)

MINSB8

Векторный знаковый минимум (8 байт)

MINUW4

Векторный беззнаковый минимум (4 слова)

MINSW4

Векторный знаковый минимум (4 слова)

MAXUB8

Векторный беззнаковый максимум (8 байт)

MAXSB8

Векторный знаковый максимум (8 байт)

MAXUW4

Векторный беззнаковый максимум (4 слова)

MAXSW4

Векторный знаковый максимум (4 слова)

PERR

Pixel error: сумма разностей 8 байт

PKLB

Упаковать два DWord в два байта

PKWB

Упаковать четыре Word в четыре байта

UNPKBL

Распаковать два байта в два DWord

UNPKBW

Упаковать четыре байта в четыре Word

Условия в условных командах (Bxx, CMOVxx, MSKxx, FBxx, FCMOVxx)

EQ

равно нулю

GE

больше или равно нулю

GT

больше нуля

LE

меньше или равно нулю

LT

меньше нуля

NE

не равно нулю

Стилизованные формы команд

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

UNOP

Нет операции: LDQ_U Rs1,0(Rx)

NOP

Нет операции: BIS R31, R31, R31

FNOP

Нет операции: CPYS F31, F31, F31

CLR Rx

Очистить регистр: BIS R31, R31, Rx

FCLR Rx

Очистить регистр: CPYS F31, F31, Fx

MOV lit8, Ry

Загрузить символ: BIS R31, lit8, Ry

MOV Rx, Ry

Копирование регистра: Rx, Rx, Ry

FMOV Fx, Fy

Копирование регистра: Fx, Fx, Fy

NEGL Rx, Ry

Копирование регистра со сменой знака: SUBL R31, Rx, Ry

NEGQ Rx, Ry

Копирование регистра со сменой знака: SUBQ R31, Rx, Ry

NEGF Fx, Fy

Копирование регистра со сменой знака: SUBF F31, Fx, Fy

NEGG Fx, Fy

Копирование регистра со сменой знака: SUBG F31, Fx, Fy

NEGS Fx, Fy

Копирование регистра со сменой знака: SUBS F31, Fx, Fy

NEGT Fx, Fy

Копирование регистра со сменой знака: SUBT F31, Fx, Fy

FNEGF/ FNEGG /FNEGS /FNEGT Fx, Fy

Копирование регистра со сменой знака: CPYSN Fx, Fx, Fy

NOT Rx, Ry

Логическое НЕ: ORNOT R31, Rx, Ry

OR Rx, Ry, Rz

Логическое ИЛИ: BIS Rx, Ry, Rz

ANDNOT Rx, Ry, Rz

Логическое И-НЕ: BIC Rx, Ry, Rz

XORNOT Rx, Ry, Rz

Логическое Исключающее ИЛИ-НЕ: EQV Rx, Ry, Rz