Kas ir kompilators
Kompilators ir datorprogramma, kas pārveido pirmkodu jeb programmas kodu (piemēram C++) citā datora valodā, kas bieži vien ir binārais kods jeb objektu kods. Galvenais mērķis pirmkoda pārveidošanai ir tā izpilde.
Par kompilatoriem pārsvarā mēdz saukt programmas, kuras tulko kodu no augsta līmeņa valodas uz zemāku. Ja kompilators kompilē kodu no zemāka līmeņa valodas uz augstāku, tad to sauc par dekompilatoru. Ja programma pārtulko kodu no vienas augsta līmeņa valodas uz citu, tad to sauc par valodu tulkotāju. Par valodas pārrakstītāju sauc programmu, kas spēj pārrakstīt konkrētu valodu tajā pašā, bet, iespējams, optimizējot vai veicot kādu citu darbību.
Augsta līmeņa valoda ir programmēšanas valoda, kas ir ļoti advancēta un ietver daudz lietas jau gatavas priekš programmētāja. Šādas valodas bieži vien ir "smagnējākas", bet ļauj domāt par biznesa problēmu risināšanu.
Zema līmeņa valoda ir programmēšanas valoda, kas ir maz advancēta un tajā programmējot ir jādomā vairāk par datora arhitektūru, bet var uzrakstīt optimālāku programmu.