小编Shi*_*umi的帖子

理解十六进制操作码

您好,我有以下 x86-Assembly:

 8048062:   31 c0                   xor    eax,eax
 8048064:   89 d8                   mov    eax,ebx
 8048066:   b8 01 00 00 00          mov    eax,0x1
 804806B:   cd 80                   int    0x80
Run Code Online (Sandbox Code Playgroud)

我想了解十六进制操作码。我在这里读到,b8并且89是 mov-instructions。但我不明白第二部分是89 d8什么d8?是d8eax 和ebx 吗?所以 d 是 eax 而 8 是 ebx?但为什么在第一行 eax 和eax == c0b8 01 00 00 00寄存器的第三行在哪里?

为什么以下行是正确的?

8048066:    b8 01 00 00 00          mov    eax,0x1
Run Code Online (Sandbox Code Playgroud)

为什么不:

b8 00 00 00 01 ?
Run Code Online (Sandbox Code Playgroud)

eax 分为:

eax …
Run Code Online (Sandbox Code Playgroud)

assembly intel

1
推荐指数
1
解决办法
5038
查看次数

标签 统计

assembly ×1

intel ×1