Otóż mam jedno pytanie do was czy ten kod jest zapisany poprawnie?

int main()
{
    const char* a="Hello, World!";
    const char* b="dir";
    asm(
    ".section .text\n"
    "movl $LC0,(%esp)\n"
    "call _printf\n"
    "movl $LC1,(%esp)\n"
    "call _system\n"
    );
}

Program wczytuje zmienną a i wypisuje ją jako tekst drugą zmienną program wywołuje jako polecenie cmd