 |
МИРЭА кафедра МОВС |
Регистры
В ЭВМ VAX есть 16 регистров общего назначения, которые обозначаются
как R0 - R15. В то же время некоторые из этих регистров имеют
специальные имена и назначение. Длина каждого регистра общего
назначения - 32 разряда. Регистр R15 используется как счетчик
команд и имеет имя PC. Во время выполнения команды его значение
изменяется таким образом, чтобы всегда указывать на очередной
обрабатываемый байт команды. Регистр R14 используется в качестве
указателя стека (stack pointer) и именуется SP. Этот регистр
указывает на вершину стека данной программы в пространстве процессов.
Хотя для этой цели можно использовать и другие регистры, однако в
машинных командах, косвенно обращающихся к стеку, всегда
используется регистр SР. Регистр R13 используется как указатель
фрейма (frame pointer) и носит имя FP. Соглашение о связях между
процедурами в ЭВМ VAX построено на структуре данных, называемой
стеком фреймов. При вызове процедуры адрес фрейма в стеке фреймов
помещается в регистр FP. Регистр R12 имеет имя АР и используется в
качестве указателя аргументов (argument pointer). В соответствии с
соглашением о связях при вызове процедуры этот регистр используется
для передачи адреса начала списка фактических параметров.
У регистров R6 - R11 нет специального назначения, и они могут
использоваться в программах для обычных целей. Точно так же можно
использовать и регистры R0 - R5, но они, кроме того, применяются
специальным образом в некоторых командах.
Кроме регистров общего назначения имеется регистр состояния
процессора PSL (Processor Status Longword), который содержит
переменные состояния и признаки, связанные с процессом. Наряду
со многими другими информационными полями PSL содержит код условия
и признак, указывающий на работу процесса а режиме совместимости
с PDP-11. Есть также ряд управляющих регистров, употребляемых для
поддержания различных функций операционной системы.