6.45 Как использовать язык ассемблера встраиваемого кода в C
Ключевое слово asm позволяет встраивать инструкции ассемблера в код C. GCC предоставляет две формы встраиваемых asm инструкций. Базовая asm инструкция не имеет операндов (см. Базовый Asm), в то время как расширенная asm инструкция содержит один или несколько операндов (см. Расширенный Asm). Расширенная форма предпочтительна для смешивания C и ассемблера внутри функции, но для включения ассемблера на верхнем уровне необходимо использовать базовый asm.
Также можно использовать ключевое слово asm для переопределения имени ассемблера для символа C или для размещения переменной C в определённом регистре.
| • Базовый Asm: | Инструкции встраиваемого ассемблера без операндов. | |
| • Расширенный Asm: | Инструкции встраиваемого ассемблера с операндами. | |
| • Ограничения: | Ограничения для операндов asm |
|
| • Метки Asm: | Указание имени ассемблера для использования с символом C. | |
| • Явные переменные регистров: | Определение переменных, находящихся в указанных регистрах. | |
| • Размер блока asm: | Как GCC вычисляет размер блока asm. |
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-7.5.0/gcc/Using-Assembly-Language-with-C.html