Yes,
ads affect how your website ranks in the search engines, especially Google.
The big "G" knows that there are some webmasters out there creating sites solely to make money off of the advertisements they place; of course, corporate sites like CNN are also obviously looking to make money off their sites, but Google wants to display the best possible content to its users, and so unless you're a major site with tons of content, expect to be punished for ads.
As a test of this I used a well-performing website of mine that is related to law. It ranks #6 for its keyphrase in Google, and has no advertisements on it. I placed Adsense on the site (not overdoing it, just one ad unit on each page) and four days later it dropped out of the top 100 for the same keyphrase. I then removed the ads and 4 days later, it was back to #6. This all occured when I had no other activity going on with the site, I was not updating content, performing any link-building actions, or anything else. The only changes were the Adsense ads.
Curious on what would happen with other sites of mine that have Adsense on them, I continue to test. I removed Adsense from a site with competitive keywords, and it has skyrocketed up in the Yahoo rankings! With Adsense it's not in the top 100, without Adsense it's #4 in Yahoo! Why is this? Well, it looks like Yahoo! doesn't want to send traffic to sites that may be making money for its competitor. I'm testing with another site as well, and will update this page with the results.
So, how do you stay at the top of the search engines and still have revenue from your site? You have to be careful. Try strategies outside of the major ad networks. Try selling static links, that, for example, would remain on the site (or just its main page) for a month. This can often bring in more revenue than Adsense anyway.
Good luck with your sites!