Действительно ли возможно выполнить x86 блок в x64 операционной системе?

Недавно я решил, что стоило получить попытку на основном x86 блоке так, чтобы было легче отладить программы, и т.д., и т.д. Таким образом, я запустил (приблизительно неделю назад) изучение x86 блок в то время, я обновил свой компьютер до поршня на 8 ГБ, так очевидно, моя установка x86 Windows XP тратила впустую все, что память, теперь, я выполняю копию x64 Windows 7, таким образом, вопрос:

Действительно ли возможно работать с x86 блоком в x64 операционной системе? Это будет работать правильно в эмуляторе? Или я должен изучить x64 блок?

10
задан Ciro Santilli 新疆改造中心法轮功六四事件 21 September 2015 в 11:38
поделиться

2 ответа

Да, конечно. Большинство программ по-прежнему 32 бит и работают нормально на 64-битных системах Windows. Эти программы являются машинным языком, который имеет однозначное отображение со сборкой (и можно легко разобрать в код сборки x86).

12
ответ дан 3 December 2019 в 14:52
поделиться

Можно ли работать с x86 Сборка на операционной системе X64? Будет ли он работать должным образом в эмуляторе?

Да, это возможно, и он будет работать должным образом. Архитектура набора инструкций всегда совместима.

Регистры в X86-64:

alt text
(Источник: USENIX.ORG )

Например: Здесь вы можете увидеть, что RAX RAX - новый реестр общего назначения 64, но вы все еще можете использовать EAX , поскольку оно относится к более низким 32 битам RAX .

Или я должен выучить сборку x64?

x86-32 Архитектура находится подмножество x86-64. Как и во-первых, вы узнали X86, а затем отправляйтесь и найдите, что новое в сборке X8664. Как только вы изучаете х86 ASM. Тогда это будет полезным ресурсом: http://www.cs.cmu.edu/~fp/courses/15213-S06/misc/asm64-handout.pdf

18
ответ дан 3 December 2019 в 14:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: