このコードを次のようにアセンブルする場合nasm
:
BITS 64
mov eax, 0x1
mov rax, 0x1
私はこの出力を取得します:
b8 01 00 00 00 b8 01 00 00 00
mov eax, 0x1
これは2回繰り返されるオペコードです。
これは、それをいつでも置き換えるmov rax, 0x1
ことができるという意味ですか、それともこの場合だけですか?mov eax, 0x1
これが正しければ、以下よりも使用する方が良いでしょう。
xor rax, rax
inc rax
アセンブルすると6バイトになりますmov eax, 0x1
が、たった5バイトですか?