Hva er montører, kompilatorer og simulatorer?

Hva er montører, kompilatorer og simulatorer?


Det er ganske mange programvarenivåer mellom PC-brukere og selve datamaskinen, og dette er også sant - i mindre grad - for den dataprogrammerer. Datamaskinen koden som de fleste programmerere skrive er bare eksternt koblet til instruksjonene som behandles av datamaskinen. Disse nivåene gjøre datamaskinen enklere å bruke.

Machine Språk

Hver datamaskin er bygget for å kjøre ett språk. Dette språket kalles maskinspråk for den aktuelle datamaskinen. Språket består av binære koder som forteller datamaskinen nøyaktig hva de skal gjøre. Alle programmer som kjører på datamaskinen består av en sekvens av maskin språk instruksjoner. Kjøring av dette sekvens av instruksjoner skaper oppførselen til datamaskinen. Instruksjoner består av spesifikke hardware instruksjoner som å flytte data fra minnet X til minneområde Y, flytte data til eller fra en bestemt register, og legger tallene som nå er i huggorm inngangs registre eller vende alle biter i register R1. Utfører instruksjoner skrevet i maskinspråk er det eneste hvilken som helst datamaskin kan gjøre.

montører

Skrive maskin språkkoden er ekstremt kjedelig, feil utsatt og vanskelig å feilsøke. Alt er strenger av nuller og enere. Det er umulig å fortelle på et øyeblikk hvis 1111000100110101 er data, en instruksjon eller adressen til en minneplassering. Det første nivået av raffinement i programmering var oppfinnelsen av assembly og programvare montører. Montering språkprogrammer har de samme instruksjonene som maskinen språk program, men instruksjonene er ting som "ADD" og "MOVE", som er mye lettere for mennesker å forholde seg til. Også adresser er i desimaltall og registre er betegnet med navn som R1 istedenfor 10001111. Et program kalt en assembler overs programmer skrevet i assembly inn i tilsvarende program i maskinspråk slik at den kan kjøres.

kompilatorer

Montering språk var en enorm forbedring over skriftlig i maskinspråk. Den ekstra tiden det tok assembler å oversette hva programmerer skrev til maskinspråk ble mer enn oppveid av den enorme besparelser i tid det tok å skrive programmet i en mer human-vennlig språk. Løsningen var ikke perfekt. Mennesker - spesielt de som ikke er dataforskere - ønsket å beskrive problemet å løse i stedet for å bryte det ned i små skritt om hvordan å flytte informasjon rundt en datamaskin. Den neste nivå i språket hierarkiet var kompilatoren språk. Disse språkene la menneskelig å beskrive hva som skulle gjøres i noncomputer vilkår. Et program kalt en kompilator oversatt disse high-nivå programmer til maskinen språk. Kompilatorer er mye mer komplisert enn montører.

simulatorer

I stedet for å bygge nye maskiner for å kjøre programmer skrevet i nye språk, programvare simulatorer tillate en maskin som skal "simulert". Disse virtuelle maskiner er grundig testet ved å kjøre benchmarking programmer før de noensinne er bygget. Simulatorene blir også brukt til å teste ut nye kompilatorer og språk før de noensinne er skrevet.