Do I need to have a web site (ready or hosted) to register a domain name?

No, you only need to provide SaudiNIC with the two name servers that are hosting your domain name from DNS point of view, and have your domain registered. All this does not require having your web-site ready.