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