Чтобы подробнее рассказать о том, что говорили другие, более низким и подробным способом:
Когда программа компилируется, инструкции пишутся для определенного набора команд процессора. То, что мы видим как «x = y + z», обычно равнозначно копированию одного значения в регистр, передаче команды добавления с расположением в памяти другого значения и т. Д.
Для этого вопроса 64-разрядное приложение ожидает работы с 64-разрядным адресным пространством. Когда вы передаете команду процессору в 32-битной системе, он одновременно работает с этими 32-битными данными.
Смысл всего этого? Вы не можете использовать более 4 гигабайт (2 32 ) памяти в 32-битной системе без творчества. Некоторые задачи, требующие нескольких операций (например, работа с простой математикой на числах> 4 миллиардов без знака), могут быть выполнены за одну операцию. Больше, быстрее, но требует нарушения совместимости со старыми системами.