Računalni simulator je program koji se pokreće na računalu u svrhu simulacije neke vrste sustava, kako bi se dobila bolja predodžba kako sustav funkcionira. Računalni simulator se također može koristiti za simulaciju drugog računala. Postoje dvije glavne vrste: simulator cijelog sustava i simulator skupa instrukcija (ISS). Ova vrsta računalnog simulatora često se koristi za testiranje novog softvera na širokom rasponu hardverskih konfiguracija, a da se zapravo ne moraju koristiti fizička računala.
Na svojoj najosnovnijoj razini, računalni simulator se koristi za rekreiranje stvarne situacije u kojoj testiranje mnogih različitih stanja ne bi bilo lako ili sigurno. U ovom slučaju, korištenje računalnog simulatora štedi mnogo vremena i resursa, a zapravo može omogućiti dubinsko testiranje koje bi bilo fizički nemoguće u stvarnom svijetu. Računalne simulacije se već neko vrijeme koriste u inženjerstvu i znanosti, a posljednjih godina, kako je hardver postao robusniji, a softver sve sofisticiraniji, ove simulacije mogu postići sve više i više.
Primjer korištenja računalnog simulatora može biti inženjerska tvrtka koja radi na projektiranju boljeg krila za zrakoplov. Umjesto trošenja resursa na izradu prototipa svakog novog dizajna i njihovo testiranje u aerotunelima ili na pravim zrakoplovima, umjesto toga može se pokrenuti simulacija. Ako je dinamika fluida vjetra točno modelirana, bilo koji broj varijabli može se modificirati kako bi se testiralo virtualno krilo u milijun različitih scenarija, od kojih bi neke bilo nemoguće ponovno stvoriti u stvarnom svijetu. Osim toga, ako se pokaže da dizajn nije idealan, može se lako modificirati i ponovno testirati, bez potrebe za izgradnjom novog fizičkog objekta. Na taj se način stotine ili tisuće dizajna mogu isprobati u relativno kratkom vremenskom razdoblju, što omogućuje puno veći stupanj finog podešavanja nego što bi inače bilo moguće.
S proliferacijom hardvera, proizvođači softvera također pronalaze potrebu da simuliraju različita okruženja za svoje programe. Budući da bi bilo neizvedivo pokrenuti dio softvera na svakom računalu na zemlji, a još manje pokrenuti ga na svakom modificiranom sustavu s više ili manje video memorije, zvučnim karticama treće strane i desecima drugih komponenti koje se mogu prilagoditi, umjesto toga se koristi računalni simulator. Na taj se način softver može pokrenuti na desecima tisuća hipotetskih hardverskih konfiguracija, a greške se mogu otkriti i popraviti mnogo prije nego što se proizvod isporuči kupcima.
Za ovaj zadatak obično se koriste simulatori skupa instrukcija. Oni mogu imati modificirane varijable koje predstavljaju različita hardverska ograničenja različitih strojeva. Te se varijable mogu mijenjati, program se može pokrenuti, a zatim se varijable mogu ponovno mijenjati, omogućujući programeru da testira mnoge sustave u kratkom vremenskom razdoblju.
Druga vrsta simulatora je simulator cijelog sustava. Iako sličan ISS-u, simulator cijelog sustava omogućuje puno opsežnije okruženje, dopuštajući simulaciju čitavih operativnih sustava i softverskih upravljačkih programa. To omogućuje još veći stupanj točnosti u simulaciji, što pruža bolju priliku za otkrivanje i popravak grešaka.