奇妙@helloworld
2025-11-30 19:28:18
发布于:浙江
奇妙@helloworld
#include <unistd.h>
#include <sys/syscall.h>
int main() {
const char* msg = "Hello,World!\n";
size_t len = 12;
asm volatile (
"mov $1, %%rax\n\t"
"mov $1, %%rdi\n\t"
"mov %0, %%rsi\n\t"
"mov %1, %%rdx\n\t"
"syscall"
:
: "r" (msg), "r" (len)
: "%rax", "%rdi", "%rsi", "%rdx", "memory"
);
return 0;
}
全部评论 1
extern "C" int main() { asm volatile ( "mov %1, %%rax\n\t" "mov $1, %%rdi\n\t" "mov %0, %%rsi\n\t" "mov %2, %%rdx\n\t" "syscall" : : "r" ("Hello,World!\n"), "i" (1), "r" ((long)13) : "%rax", "%rdi", "%rsi", "%rdx", "memory" ); asm volatile ( "mov %0, %%rax\n\t" "mov %1, %%rdi\n\t" "syscall" : : "i" (60), "r" ((long)0) : "%rax", "%rdi" ); }2025-11-30 来自 浙江
0我们不需要使用任何头文件
2025-11-30 来自 浙江
0











有帮助,赞一个