アセンブリ言語での二つの数値の乗算と結果の表示


section .data
    num1 dd 10  ; 一つ目の数値
    num2 dd 5   ; 二つ目の数値
    result dd 0 ; 結果
section .text
    global _start
_start:
    ; 一つ目の数値をレジスタにロードする
    mov eax, [num1]
    ; 二つ目の数値をレジスタにロードする
    mov ebx, [num2]
    ; 乗算を実行する
    mul ebx
    ; 結果を変数に保存する
    mov [result], eax
    ; 結果を表示する
    mov eax, 4
    mov ebx, 1
    mov ecx, result
    mov edx, 4
    int 0x80
    ; プログラムを終了する
    mov eax, 1
    xor ebx, ebx
    int 0x80

このプログラムでは、num1num2という2つの数値を定義し、resultという変数を用意しています。mov命令を使用して、数値をレジスタにロードし、mul命令で乗算を実行します。乗算の結果はeaxレジスタに格納されます。その後、mov命令を使用してresult変数に結果を保存し、最後に結果を表示します。

このプログラムをアセンブルし、リンクし、実行すると、コンソールに「50」という結果が表示されます。