From the way I understand it, 32bit programs are run in an 'emulated' 32bit space. Meanwhile, accessing the hardware via drivers has to run directly in Windows proper, and thus would have to be in 64bit mode. While that might have been a little problematic when Win64 came out (as all previous drivers were compiled in 32bit mode), with as long as Win64 has been around now (XP64bit was the first), most drivers written should be done in dual 32/64bit mode with their installation programs and some conditional OS checks to see which one to install.
Oh, and just a FYI, it's not necessarily that Win7/8/10 is strictly 64bit, they have 32bit versions as well.