Какую архитектуру набора команд имеет файл LE (линейный исполняемый файл)? В связанной статье говорится: смешанный 16/32 бит .
- Означает ли это, что один и тот же файл LE может содержать 16-битный и 32-битный код?
- Как определить, содержит ли он 16-разрядный (8086) код?
- Как определить, содержит ли он 32-разрядный (i386) код?
Обратите внимание, что я Мне известно о поле Тип процессора (см. здесь ), которое может различать guish между 80286 и i386 (80386). Тем не менее, я интерпретирую это как требование к типу процессора, так что это не определяет архитектуру, например, шестнадцатеричный 40
действителен в обоих: это означает inc ax
в 16-битном коде и означает inc eax
в 32 битовый код, и оба могут быть выполнены процессором 80386. Меня интересует, что означает hex 40
в коде файла LE.