Я столкнулся с ошибкой во время выполнения следующего кода сборки
#cpuid using C library Functions
.section .data
output:
.asciz "The Processor Vendor ID is '%s'\n"
.section .bss
.lcomm buffer, 12
.section .text
.globl main
main:
movq $0, %rax
cpuid
movq $buffer, %rdi
movq %rbx, (%rdi)
movq %rdx, (%rdi)
movq %rcx, (%rdi)
pushq $buffer
pushq $output
call printf
addq $8, %rsp
pushq $0
call exit
Обнаружена ошибка сегментации в части библиотеки C Calling:call printf. Он работает в режиме x86_64. Что я упустил при компиляции кода x64 в отношении библиотеки c? Или что-то не так с кодом
Спасибо