Mips — различия между версиями

Материал из InformationSecurity WIKI
Перейти к: навигация, поиск
м (Регистры с описанием)
м (Регистры с описанием)
Строка 9: Строка 9:
 
{| class="wikitable"
 
{| class="wikitable"
 
|+ Регистры
 
|+ Регистры
! Название || Номер || Применение || нужно ли резервировать?
+
! Название || Номер || Применение
 
|-
 
|-
 
! $zero
 
! $zero
| $0 || всегда хранит 0 || N/A
+
| $0 || всегда хранит 0
 
|-
 
|-
 
! $at
 
! $at
| $1 || временный регистр для языка ассемблера || НЕТ
+
| $1 || временный регистр для языка ассемблера
 
|-
 
|-
 
! $v0—$v1
 
! $v0—$v1
| $2—$3 || значения функций и выражений ($v0 отвечает за вызов syscall) || НЕТ
+
| $2—$3 || значения функций и выражений ($v0 отвечает за вызов syscall)
 
|-
 
|-
 
! $a0—$a3
 
! $a0—$a3
| $4—$7 || аргументы функций || НЕТ
+
| $4—$7 || аргументы функций
 
|-
 
|-
 
! $t0—$t7
 
! $t0—$t7
| $8—$15 || временные || НЕТ
+
| $8—$15 || временные
 
|-
 
|-
 
! $s0—$s7
 
! $s0—$s7
| $16—$23 || сохраненные временные значения || ДА
+
| $16—$23 || сохраненные временные значения
 
|-
 
|-
 
! $t8—$t9
 
! $t8—$t9
| $24—$25 || временные || НЕТ
+
| $24—$25 || временные
 
|-
 
|-
 
! $k0—$k1
 
! $k0—$k1
| $26—$27 || зарезервирована для ядра операционной системы || НЕТ
+
| $26—$27 || зарезервирована для ядра операционной системы
 
|-
 
|-
 
! $gp
 
! $gp
| $28 || глобальный указатель || ДА
+
| $28 || глобальный указатель
 
|-
 
|-
 
! $sp
 
! $sp
| $29 || указатель стека || ДА
+
| $29 || указатель стека
 
|-
 
|-
 
! $fp
 
! $fp
| $30 || указатель фрейма || ДА
+
| $30 || указатель фрейма
 
|-
 
|-
 
! $ra
 
! $ra
| $31 || адрес возврата || N/A
+
| $31 || адрес возврата
 
|}
 
|}
  

Версия 15:01, 31 января 2020

MIPS -


Описание

Регистры с описанием

Регистры
Название Номер Применение
$zero $0 всегда хранит 0
$at $1 временный регистр для языка ассемблера
$v0—$v1 $2—$3 значения функций и выражений ($v0 отвечает за вызов syscall)
$a0—$a3 $4—$7 аргументы функций
$t0—$t7 $8—$15 временные
$s0—$s7 $16—$23 сохраненные временные значения
$t8—$t9 $24—$25 временные
$k0—$k1 $26—$27 зарезервирована для ядра операционной системы
$gp $28 глобальный указатель
$sp $29 указатель стека
$fp $30 указатель фрейма
$ra $31 адрес возврата

Инструкции

Системные вызовы

_UAPI_ASM_UNISTD_H

_MIPS_SIM_ABI32

_MIPS_SIM_ABI64

_MIPS_SIM_NABI32

Особые техники обхода защиты

Ссылки

Система команд процессора MIPS R3000 игровой приставки SONY PLAYSTATION

Обьяснение на английском откуда берется 4001 системный вызов

Вики