Почему приложения с пометкой W32 никогда не будут работать на Windows64? И наоборот! Они и не загрузятся, но если и загрузятся, то никогда работать не смогут. Об этом!
Для этого вспомним этапы развития.
Предварительно вспомним из Статьи 9 этого цикла, что ОЗУ работает только с двойными словами из 8 байтов или 64 битов. Запись и чтение в ОЗУ происходит блоками в 64 бита.
1. Этап развития.
ПК с ОЗУ до 4 Мбайт имел размер регистра Адреса ОЗУ 32 бита, шина данных ОЗУ -64 бита. Внутренняя шина ПК – 32 бита.
2. Этап развития.
ПК с ОЗУ свыше 4 Мбайт имел размер регистра Адреса ОЗУ 64 бита, шина данных ОЗУ -64 бита. Внутренняя шина ПК – 32 бита.
3. Этап развития.
ПК с ОЗУ свыше 4 Мбайт имел размер регистра Адреса ОЗУ 64 бита, шина данных ОЗУ -64 бита. Внутренняя шина ПК – 64 бита.
Первые два этапа имеют спецификацию 32х битного компьютера.
3й этап имеет спецификацию 64х битного компьютера.
Спецификации 32 и 64 подразумевают отличия в ПК как в «железе», так и микропрограммном обеспечении. Рассмотрим подробнее эти отличия.
В Этапе развития 1 для адресации ОЗУ требовалось одно «действие» для помещения адреса ОЗУ в её Адресный регистр через шину ПК. После того как выполнилась адресная арифметика и адрес ОЗУ размером 32 бита сформировался внутри ЦП, он в одно «действие» помещается в Адресный регистр ОЗУ тоже в 32 бита. Под одним «действием» будем понимать помещение Адреса ОЗУ из внутренних регистров ЦП в регистр Адреса ОЗУ через шину ПК.
Далее ОЗУ выдаёт на свою шину 64 бита данных.
Шина ПК здесь 32 бита, а нужно передать в ЦП 64 бита данных, то такая передача происходит в два других «действия».
Итого, чтобы получить данные в таком ПК, ЦП нужно выполнить три некоторых «действия». Все они происходят под управлением микрокоманд ЦП.
В Этапе развития 2 для адресации ОЗУ требовалось уже два «действие» для помещения адреса ОЗУ 64 бита в её Адресный регистр 64 бита через шину ПК 32 бита. После того как выполнилась адресная арифметика и адрес ОЗУ размером 64 бита сформировался внутри ЦП, он в два « действия» помещается в Адресный регистр ОЗУ в 64 бита через шину 32 бита.
Шина ПК здесь 32 бита, а нужно передать в ЦП 64 бита данных, то такая передача происходит в два своих «действия».
Итого, чтобы получить данные в таком ПК, ЦП нужно выполнить четыре некоторых «действия». Все они происходят под управлением микрокоманд.
В Этапе развития 3 для адресации ОЗУ требовалось только одно «действие» для помещения адреса ОЗУ 64 бита в её Адресный регистр 64 бита через шину ПК 64 бита.
После того как выполнилась адресная арифметика и адрес ОЗУ размером 64 бита сформировался внутри ЦП, он в одно « действие» помещается в Адресный регистр ОЗУ в 64 бита через шину 64 бита.
Шина ПК здесь 64 бита, и нужно передать в ЦП 64 бита данных, то такая передача происходит тоже в одно своё «действие»!
Итого, чтобы получить данные в таком ПК, ЦП нужно выполнить два разных «действия». Все они происходят под управлением микрокоманд ЦП.
Из вышеприведённого видно, что в «ПК 64» «железо» значительно отличается от «ПК 32». Под это отличие микропрограммное управление тоже претерпело изменения, поэтому эти две системы несовместимы!
Сотрудники Вычислительного Центра Главсредволговодстроя г. Саратов, 1977-1993.
-------------------