Pour qu'un logiciel développé en 32 bits tourne sur un kernell 64bits, il faut que les instructions de ses algorithmes soient transcrites pour être exécutables en 64bits.
Autrement dit, les développeurs doivent créer deux versions de leurs softwares, une écrite en 32bits, une autre en 64bits.
Bien que cela commence à sérieusement se généraliser, ce n'était absolument pas le cas il y a quelques années encore. Beaucoup de vieux logiciels ne tourneront exclusivement qu'en 32bits, et s'ils ne sont plus suivis par leurs développeurs, aucune version 64 ne verra le jour.
Personnellement, j'installe systématiquement un OS en 64bits et un OS en 32bits sur chacune de mes bécanes. J'ajoute souvent un Ubuntu et un XPsp3 histoire de voir large, et j'ai même un vieux Win98SE qui traine quelque part pour me permettre de faire tourner quelques oldies qui ont besoin de tourner en MS-DOS pur (oui, ça se fait vieux...)