История изменений
Исправление
Forum0888,
(текущая версия)
:
Компилятор умный, всё на регистрах.
Пока не понял чем им массив так приглянулся.
На всякий случай.
Сводная таблица с регистрами и их назначением, очень полезна при чтении ассемблера:
Регистр Назначение
rax Временный регистр, возврат первого (ret 1) INTEGER результата.
rbx Принадлежит вызывающей функции, не должен быть изменён на момент возврата.
rcx Передача четвёртого (4) INTEGER аргумента.
rdx Передача третьего (3) INTEGER аргумента, возврат второго (ret 2) INTEGER результата.
rsp Указатель на стек.
rbp Принадлежит вызывающей функции, не должен быть изменён на момент возврата.
rsi Передача второго (2) INTEGER аргумента.
rdi Передача первого (1) INTEGER аргумента.
r8 Передача пятого (5) INTEGER аргумента.
r9 Передача шестого (6) INTEGER аргумента.
r10-r11 Временные регистры.
r12-r15 Принадлежит вызывающей функции, не должны быть изменены на момент возврата.
xmm0-xmm1 Передача и возврат первого и второго SSE аргументов.
xmm2-xmm7 Передача с третьего по шестой SSE аргументов.
xmm8-xmm15 Временные регистры.
Исправление
Forum0888,
:
Компилятор умный, всё на регистрах.
Пока не понял чем им массив так приглянулся.
На всякий случай.
Сводная таблица с регистрами и их назначением, очень полезна при чтении ассемблера:
Регистр Назначение
rax Временный регистр, возврат первого (ret 1) INTEGER результата.
rbx Принадлежит вызывающей функции, не должен быть изменён на момент возврата.
rcx Передача четвёртого (4) INTEGER аргумента.
rdx Передача третьего (3) INTEGER аргумента, возврат второго (ret 2) INTEGER результата.
rsp Указатель на стек.
rbp Принадлежит вызывающей функции, не должен быть изменён на момент возврата.
rsi Передача второго (2) INTEGER аргумента.
rdi Передача первого (1) INTEGER аргумента.
r8 Передача пятого (5) INTEGER аргумента.
r9 Передача шестого (6) INTEGER аргумента.
r10-r11 Временные регистры.
r12-r15 Принадлежит вызывающей функции, не должны быть изменены на момент возврата.
xmm0-xmm1 Передача и возврат первого и второго SSE аргументов.
xmm2-xmm7 Передача с третьего по шестой SSE аргументов.
xmm8-xmm15 Временные регистры.
Исправление
Forum0888,
:
Компилятор умный, всё на регистрах.
Пока не понял чем им массив так приглянулся.
На всякий случай.
Сводная таблица с регистрами и их назначением, очень полезна при чтении ассемблера:
Регистр Назначение
rax Временный регистр, возврат первого (ret 1) INTEGER результата.
rbx Принадлежит вызывающей функции, не должен быть изменён на момент возврата.
rcx Передача четвёртого (4) INTEGER аргумента.
rdx Передача третьего (3) INTEGER аргумента, возврат второго (ret 2) INTEGER результата.
rsp Указатель на стек.
rbp Принадлежит вызывающей функции, не должен быть изменён на момент возврата.
rsi Передача второго (2) INTEGER аргумента.
rdi Передача первого (1) INTEGER аргумента.
r8 Передача пятого (5) INTEGER аргумента.
r9 Передача шестого (6) INTEGER аргумента.
r10-r11 Временные регистры.
r12-r15 Принадлежит вызывающей функции, не должны быть изменены на момент возврата.
xmm0-xmm1 Передача и возврат первого и второго SSE аргументов.
xmm2-xmm7 Передача с третьего по шестой SSE аргументов.
xmm8-xmm15 Временные регистры.
Исходная версия
Forum0888,
:
Компилятор умный, всё на регистрах.
Пока не понял чем им массив так приглянулся.