Forgetting to unregister an assembly only leaves junk in the registry. Which is sloppy and very hard to get rid of but certainly not the end of the world. Many older machines have lots of junk like that, the kind of junk that a registry cleaner professes to get rid of. This is not an endorsement of tools like that btw.
It doesn't prevent an updated assembly from working correctly. Assuming you did it right and ran Regasm.exe correctly, used the /codebase option so you don't hassle the GAC and also updated the type library reference in your ASP project. The latter being the typical step that's overlooked, it might still use the old registration keys.
A counter-measure is to (temporarily) use the [Guid] attribute on the interface and class declarations. So that the registry keys that are used for registering the component are always the same. You can't add junk in the registry that way, an update will always overwrite the same keys. You can even skip the registration step on an update, assuming you didn't add any interfaces or classes or changed the path of the DLL.
You should however removed those [Guid] attributes again after the project stabilizes and you're about to ship. Not doing so invokes DLL Hell, nothing to mess with.
The Regasm.exe /regfile option is notable. You can see what registration keys are being used.