Réponses:
Ce n'est pas seulement pour la lisibilité humaine, il existe de nombreuses raisons programmatiques pour séparer les applications 32 bits de 64 bits. Considérez le dossier "Fichiers communs". Si vous avez une application 32 bits et une application 64 bits qui utilisent le dossier Fichiers communs pour un fichier du même nom, vous allez choisir celui qui a été installé en premier. Il existe également des différences dans la façon dont Windows présente ces dossiers aux applications elles-mêmes, bien que je ne les connaisse pas suffisamment pour bien les expliquer.
Enfin, il s'agit de la première des nombreuses étapes du passage à des applications 64 bits universellement natives. Présenter les dossiers différemment permet de garder la distinction visible pour les développeurs et les utilisateurs, et les "Program Files (x86)" 32 bits sont un homme étrange.
Comme vous l'avez écrit dans votre question, ces dossiers sont des répertoires de configuration par défaut distincts pour les applications 32 bits et 64 bits.
Une configuration hybride intéressante est SQL Server 2005: si vous installez installez la version 64 bits, les principaux fichiers du moteur SQL seront copiés sous le dossier Program Files, les outils, qui ne sont que 32 bits, seront installés dans les "Program Files (x86) "
Vous avez mentionné la raison: pour distinguer les fichiers de programme 32 bits des fichiers de programme 64 bits. Lorsque vous exécutez un programme 32 bits sur une installation Windows 64 bits, Windows redirige les demandes de dossier de ce programme pour% ProgramFiles% [C: \ Program Files dans la version en langue anglaise] vers l'alternative x86 [C: \ Program Files ( x86)]. En raison de cette redirection silencieuse, les programmes 64 bits et 32 bits peuvent coexister sans interférer les uns avec les autres. (Par exemple, Windows 64 bits inclut les versions 64 bits et 32 bits d'Internet Explorer.) Windows effectue également des redirections similaires pour ses propres fichiers et pour les clés de Registre.