код сборкиже инструкция x86 сборка отличается от NASM и GAS
mov eax, 0x3a14a5
jmp eax
ГАЗ производит опкода
0xB8, 0xA5, 0x14, 0x3A, 0x00
0xFF, 0xE0
в то время как NASM производит и опкода
0x66, 0xB8, 0xA5, 0x14, 0x3A, 0x00
0x66, 0xFF, 0xE0
Так вы см. NASM, предварительно предваряет код 0x66 перед кодом. В моей программе (о которой я не буду вдаваться в подробности) код операции GAS работает правильно, а код NASM вызывает сбои, указывающие, что эти два кода операций не равны. Почему NASM предугадывает 0x66 и как я могу избавиться от него?
обновление: bits 32
директива работала. Спасибо за быстрый ответ, ссылки и объяснения!