切腹のイラスト

Cでhello, world

{
  date: "",
  update: "",
}

久々に書いたのでメモ。 cc -ansi hoge.cでコンパイルできる。

print(s,d) void*s,*d; {
  __asm__(".quad 0xcfff48aef2fcffb1" : "=D"(d) : "D"(s), "a"(0));
  __asm__("syscall" :: "a"(1), "D"(1), "S"(s), "d"(d-s));
}

main() {
  print("hello, world\n");
  return 0;
}

解説

  mov   $0xff,%cl
  cld
  repne scasb
  dec   %rdi

蛇足

どーでもいいけど,Dart v1のコードって昔のCをめっちゃ意識してるよな……。

main() {} // Dart v1では適格

追記(2024-11)

動かんかったのを修正。 repneのとこコピペミスってた。

あと,NULLまでwriteしてたのも修正した。

参考