You’ve been a member for 16 months and nearly a thousand posts and you only just realised that :o remember Google is your friend, just ask him anything you want.
It’s a little bit complicated in my opinion: If Avast would be only a pure 32bit application, the default installation path would be C:\Program Files (x86) instead of C:\Program Files.
However, it doesn’t have any 64bit processes running in the task manager.
I guess it’s a 32bit application which has been altered to be compatible with x64 systems so much, that Windows can’t recognize it as a pure 32bit application anymore and installs it on default settings in C:\Program Files with other x86-x64 and pure x64 applications.
On a quick note, x64 processors used in current home computers are actually x86-x64 processors.
The installer writer gets to choose where it gets installed. The differentiation between C:\Program Files (x86) and C:\Program Files is completely arbitrary.
The differentiation between Program Files and Program Files (x86) is not arbitrary:
64-bit versions of Windows have two folders for application files; 'Program Files' folder serves as the default installation target for native (in this case 64-bit) programs, while the 'Program Files (x86)' folder is the default installation target for non-native (in this case x86-32) programs. While 64-bit Windows versions also have a %ProgramFiles(x86)% environment variable, the dirids/CSIDLs are not different for 32-bit/64-bit; the setup/shell APIs merely return different results, depending on whether the calling process is native or not.
I apologize for perhaps a poor (or too terse) choice of wording on my part.
Any installer writer could choose either destination for 32 or 64 bit software. That decision is not set or policed by any technical process that’s in place - as clearly indicated by Avast’s own installer - it’s an arbitrary distinction, written in guideline form.
Product developers producing software that spans both architectures (32 and 64 bit) could arbitrarily choose to install parts under one subtree and parts under another, or put it all in one place. Or even someplace else entirely, though that requires more work.