LINUX.ORG.RU

История изменений

Исправление 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, :

Компилятор умный, всё на регистрах.
Пока не понял чем им массив так приглянулся.