The 4.* framework updates in place, so there is only one version installed. In 4.8 is installed, then it runs on 4.8
The app is built with the lowest supported version. So if a 4.6.1 app is run on a computer with only 4.5.2 it will give a warning to install the update.
Note: this different than .net core where updates are installed side by side, and the app requires a matching major and minor.