Формат инструкции для семейства x86, показанный ниже, звучит неоднозначно.
Fields: opcode,direction,width mod,reg,r/m
Bits: 6 1 1 2 3 3
Предположим, что инструкция MOV AX, [BP]
.Независимо от того, какой это код операции, у нас есть следующие числа:
direction=1
width=1
Для второго байта reg
равно 000 (код для AX), а mod
должно быть 00, но запись отсутствуетдля bp
в таблице.Итак, r/m
неизвестен.
Если предположить, что mod
равно 11, а r/m
равно 101, то это машинный код для инструкции, подобной MOV AX, BP
.
Любая идея?