Files
Kirill 3a96c27c48 Arch: new
Все теоритические билеты по Архитектуре ЭВМ в основном были написаны,
кроме: 8.4; 13.4; 14.4; 15.4. Задачи будут позже.
2025-01-14 19:40:01 +03:00

2.6 KiB

Программируемые места хранения

Типы регистров:

  1. Целочисленные регистры x0 - константа 0; x1 - return address; x2 - stack pointer; x3 - global pointer; x4-thread pointer ; x5-x7, x28-x31 - временные; x8-x9, x18-x27 - сохраняемые при вызове; x10-x17 - argument registers;
  2. Вещественные регистры f0-f7, f28-f31 - временные; f8-f9, f18-f27 - сохраняемые при вызове; f10-f17 - параметры и возвращаемые значения;
  3. Векторные регистры v0-v31- временные; vl - vector length; vtype - vector datatype register; vxrm - vector fixed-point rounding mode register; vxsat - vector fixed-piont saturation flag register; vcsr - vector control and status register; vlenb - vector register length in bytes; vstart- vector start position; Особенности использования векторных регистров:
  • Векторные регистры появятся дополнительно при использовании векторных инструкций.
  • Длина зависит от инструкции (умолч. 128 бит)
  • Можно выполнять работы как над вектором, так и над какой-то из частей.
  • Вектора могут объединяться для формирования более длинных векторов.

Формат представления команд:

  • R (Register) - «регистр-регистр-регистр»
  • I (Immediate) - «непосредственное значение - регистр - регистр»
  • S (Store) - «регистр-регистр-непосредственное значение». 1^{й} регистр - источник, который сохраняется в память, 2^{й} регистр и непосредств. значение используют для формирования адреса.
  • U (Upper) - «непосредственное значение - регистр». Используется, когда возможно взять адрес следующей выполняемой инструкции. Стадия декодирования облегчена максимально: анализируем битовые поля и отправляем в известные позиции на промежуточном регистре перед след. стадией.