Under construction!

URL данного справочника
emc.orgfree.com/RISC-V/hb


Навигатор

Инструкции базового набора RV32I:

handbook

арифметические

логические

сдвиги

сравнения

безусловные
переходы

системные

  • FENCE
  • ECALL
  • EBREAK

условные
переходы

загрузки

сохранения


Evgeny Eremin

См. также

  • набор RV64I
  • набор RV128I

Инструкция AUIPC

AUIPC rd, imm

Набор команд: базовый RV32I

Формат: U

Операнды: rd – регистр, imm – 20-битная константа

Действие: копирует в rd содержимое программного счетчика PC (фактически адрес самой инструкции) и прибавляет константу к старшим 20 битам

Примечание

В сочетании с последующей инструкцией JALR, добавляющей к адресу младшие биты, позволяет осуществить переход на любой адрес памяти относительно текущего значения PC. Если же поместить после AUIPC инструкцию обращения к памяти (подходящий вариант load или store, также прибавляющий константу к младшим битам), то можно получить доступ к данным с любым адресом.

Пример

Инструкция AUIPC x7, 0 занесет в x7 свой адрес.
Код инструкции содержит следующие поля:

полеразрядностьсодержимоепримечание
imm20 битов00000000000000000000 0
rd5 битов00111x7
opcode7 битов0010111 всегда

Итоговый код

00000000000000000000 00111 00101112 = 00 00 03 9716


Автор справочника - Евгений Александрович Еремин (Пермский государственный гуманитарно-педагогический университет). e_eremin@yahoo.com


Free Web Hosting