まず、テキストエディタで新しいファイルを作成し、拡張子が.asmのファイルとして保存します。次に、以下のコードをファイルに追加します。
section .data
hello db 'Hello, World!',0
section .text
global _start
_start:
; メッセージを表示するためにシステムコールを呼び出す
mov eax, 4 ; sys_writeシステムコールの番号
mov ebx, 1 ; 標準出力のファイルディスクリプタ
mov ecx, hello ; メッセージのアドレス
mov edx, 13 ; メッセージの長さ
int 0x80 ; システムコール呼び出し
; プログラムを終了するために終了システムコールを呼び出す
mov eax, 1 ; sys_exitシステムコールの番号
xor ebx, ebx ; 終了コードを0に設定
int 0x80 ; システムコール呼び出し
このコードは、データセクション(.data)で"Hello, World!"という文字列を定義し、テキストセクション(.text)でシステムコールを使用してメッセージを標準出力に表示します。最後に、終了システムコールを呼び出してプログラムを終了します。
このアセンブリコードを実行するには、以下の手順を実行します。
-
アセンブル: ターミナルで、
nasm -f elf64 hello.asm
を実行します。これにより、アセンブリコードがオブジェクトファイルに変換されます。 -
リンク: ターミナルで、
ld -o hello hello.o
を実行します。これにより、オブジェクトファイルが実行可能ファイルにリンクされます。 -
実行: ターミナルで、
./hello
を実行します。"Hello, World!"というメッセージが表示されます。
以上が、Intel 64アセンブリ言語を使用してHello Worldプログラムを作成する方法です。必要なコードと手順を提供しましたので、ぜひ試してみてください。