Hvad er en præprocessor?

Generelt, når nogen refererer til en processor i databehandling, betyder de en slags siliciumchip, der udfører beregninger. P'et i CPU, GPU, APU, NPU og mange andre former for logiske chips, står for "Processing", dvs. Central Processing Unit. Hver af dem er en specifik type processor, optimeret til dens specifikke funktion. En præprocessor har dog ikke noget at gøre med fysiske processorer som CPU eller GPU. I stedet er det et programmeringsudtryk, der specifikt vedrører kompilerede sprog.

Hvad er en compiler?

En compiler er et stykke software, der kompilerer et bestemt programmeringssprog til maskinkode. Alle programmeringssprog skal konverteres til maskinkode, da de menneskelæselige instruktioner, der udgør brugbare programmeringssprog, ikke kan eksekveres direkte af computeren. Nogle er designet til at blive fortolket på farten, når koden køres. Denne tilgang er meget fleksibel, hvilket gør det nemt at foretage mindre ændringer. Mange andre programmeringssprog skal dog kompileres for at kunne udføres. I små programmer tager dette ikke nødvendigvis lang tid. Med større programmer kan kompilering dog tage minutter eller endda timer.

Så hvorfor vil du bruge et sprog, der skal kompileres? Nå, det er sværere at reverse engineering. Fortolkede programmeringssprog har ofte deres kode distribueret som den er, hvilket gør det nemt at "stjæle". For virksomheder, der ønsker at beskytte deres intellektuelle ejendom, indsætter kompilering et komplekst og upålideligt trin i reverse engineering for at se den faktiske kode. Kompileret software har også en tendens til at være mindre, da det er blevet optimeret til udførelse. Dette er egentlig ikke et problem med små scripts, men når det drejer sig om stor software, hundredvis af megabyte eller endda gigabyte i størrelse, kan dette have en mærkbar effekt.

Så hvad gør en præprocessor?

En præprocessor er et hjælpeprogram, der køres over kode, før det kompileres. Typisk vil en compiler automatisk kalde præprocessoren, når den starter, men de kan også køres separat. Preprocessorens opgave er at opsætte koden nøjagtigt efter hensigten. Det gør den primært ved at udføre søge- og erstatningsfunktioner.

I C er det for eksempel almindelig praksis at bruge en række standardbiblioteker. Disse biblioteker definerer en række funktioner, der giver standardfunktionalitet. For at importere disse biblioteker bruges nøgleordet "#include" efterfulgt af et biblioteksnavn. Forbehandleren søger gennem koden efter udsagn som "#include" og erstatter dem. I tilfælde af "#include" indsætter præprocessoren hele indholdet af det angivne bibliotek.

Dette giver dig mulighed for at holde den faktisk skrevne kode let læselig, mens du også gør brug af mange kraftfulde og allerede eksisterende værktøjer. Det sparer dig for at skulle genopfinde hjulet for hver applikation eller at skulle indsætte noget af eller hele biblioteket i kodebasen.

En anden potentiel brug af en præprocessor er at fjerne eller tilføje visse funktioner afhængigt af formålet med bygningen. For eksempel, hvis du ønsker at teste en ny build, kan det være rigtig nyttigt at inkludere en masse fejlretningstrin. Ikke alene er disse ikke nødvendige i release builds, men de gør faktisk den kompilerede software større. En præprocessor kan kontrollere kompileringsargumenter og afgøre, om visse funktioner skal inkluderes eller ignoreres. I lighed med dette vil en præprocessor typisk fjerne kommentarer før compileren, da disse ikke bør inkluderes i en build.

Konklusion

En præprocessor er et værktøj, der køres af en compiler til at manipulere koden, før den rent faktisk bliver kompileret. Mens præprocessoren kan kaldes separat, kaldes den typisk som en del af kompileringsprocessen. Forprocessoren leder efter bestemte definerede strenge og erstatter dem med standardindhold. For kommentarer er der ingen erstatning, men for erklæringer, der omfatter eksterne biblioteker, erstatter præprocessor erklæringen med indholdet af det faktiske bibliotek. Præprocessoren kan også tage kompileringstidsargumenter til at gate visse funktionaliteter. Dette bruges ofte til at inkludere eller udelukke fejlretningsfunktionalitet fra test- eller udgivelsesbuilds.


Leave a Comment

Sådan installer du en SSD på stationære og bærbare computere

Sådan installer du en SSD på stationære og bærbare computere

Har du lige købt en SSD i håbet om at opgradere din computers interne lager, men ved ikke, hvordan du installerer SSD? Læs denne artikel nu!

Canon Pixma MG5220: Scan Uden Blæk

Canon Pixma MG5220: Scan Uden Blæk

Sådan aktiveres scanning på Canon Pixma MG5220, når du er løbet tør for blæk.

10 Bedste NAS Lagringsenheder til Hjem og Professionelt Brug

10 Bedste NAS Lagringsenheder til Hjem og Professionelt Brug

Uanset om du leder efter en NAS til dit hjem eller kontor, så tjek denne liste over de bedste NAS lagringsenheder.

Hvad skal man gøre, hvis Powerbeats Pro ikke oplades i etui

Hvad skal man gøre, hvis Powerbeats Pro ikke oplades i etui

Hvis din Powerbeats Pro ikke oplades, skal du bruge en anden strømkilde og rengøre dine earbuds. Lad etuiet være åbent, mens du oplader dine earbuds.

Sådan Fixer du GeForce Now Fejlkode 0xC272008F

Sådan Fixer du GeForce Now Fejlkode 0xC272008F

Du er klar til en aften med gaming, og det bliver en stor aften - du har lige hentet "Star Wars Outlaws" på GeForce Now streamingtjenesten. Opdag den eneste kendte løsning, der viser dig, hvordan du kan fikse GeForce Now Fejlkode 0xC272008F, så du kan begynde at spille Ubisoft-spil igen.

Sådan forbinder du Windows 11 bærbar computer til projector/TV

Sådan forbinder du Windows 11 bærbar computer til projector/TV

Læs denne artikel for at lære om den enkle trin-for-trin proces for at forbinde en bærbar computer til en projector eller TV på Windows 11 og Windows 10 OS.

Sådan Finder Du IP-adressen til en Printer

Sådan Finder Du IP-adressen til en Printer

Har du problemer med at finde ud af, hvilken IP-adresse din printer bruger? Vi viser dig, hvordan du finder den.

3D Printning Grundlæggende: Vedligeholdelsestips til din 3D-printer

3D Printning Grundlæggende: Vedligeholdelsestips til din 3D-printer

At holde dine 3D-printere er meget vigtigt for at få de bedste resultater. Her er nogle vigtige tips at huske på.

3D Printning Grundlæggende: En Nødvendig Vedligeholdelseskontrolliste

3D Printning Grundlæggende: En Nødvendig Vedligeholdelseskontrolliste

At holde dit udstyr i god stand er et must. Her er nogle nyttige tips til at holde din 3D-printer i topstand.

5 Årsager til, at din bærbare computer overophedes

5 Årsager til, at din bærbare computer overophedes

Find ud af nogle af de mulige årsager til, at din bærbare computer overopheder, sammen med tips og tricks til at undgå dette problem og holde din enhed kølig.