LINUX.ORG.RU

Linux и программирование на асме под x86-64


0

2

Здравствуйте. Пишу на асме в учебных целях. Такой вопрос: почему, несмотря на то, что в System V ABI amd64 supp. для передачи параметров в функции указаны 64-разрядные регистры(rax, rsi, rdi, ...), в листингах, которые я получаю с помощью «gcc -S ...» используются 32-разрядные(eax, edi, esi, ...) ? Спасибо.

Потому что эти параметры функции 32-битные, а регистры ‘e?x’ — это младшие 32 бита регистров ‘r?x’.

gentoo_root ★★★★★
()
Ответ на: комментарий от gentoo_root

Спасибо, понял, что тип int никто не отменял.

kermzyxer
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.