The rewrites as you have them are considered internal. As a result, no redirection is done - the user or the search engine still sees the original URL, but the server displays a different page. So just to give one example of a change to make it a 301 redirect
Original Version:
Code:
RewriteRule ^downloads/(.*)$ search.php?keywords=$1
301 Redirect Version
Code:
RewriteRule ^downloads/(.*)$ http://www.mysite.com/search.php?keywords=$1[R=301]
There is a second way, which is supposed to be more efficient in the server code
Code:
RedirectMatch 302 ^downloads/(.*)$ http://www.mysite.com/search.php?keywords=$1