You can do a number of things to try to prevent spammers from registering. One is to enable "question and answer" human verification for registration. You only need a few simple questions for it to be effective. (Recaptcha doesn't work as well - spammers have some automated way to get past it, apparently).
There are also mods that you can install that will check the registration info against a database like SFS (stop forum spam) and deny registration to known spammers.
In the end, I think it's a trade-off of how easy you want to make it for people to register vs. how many spammers you'll get. Some people claim to have zero spammers registering, but I think they do things like completely denying registration from certain countries, which may or may not work for you.
Here's a article about anti-spammer methods:
www.vbulletin.org/forum/showthread.php?t=276547 , it's probably a good idea to read that and maybe look at some of the things it links to.