Mis on eeltöötleja?

Üldiselt, kui keegi viitab andmetöötluses protsessorile, tähendab see mingit ränikiipi, mis teeb arvutusi. CPU-s, GPU-s, APU-s, NPU-s ja paljudes muudes loogikakiipides sisalduv P tähistab "töötlust", st keskprotsessorit. Igaüks neist on teatud tüüpi protsessor, mis on optimeeritud selle konkreetse funktsiooni jaoks. Eelprotsessoril pole aga füüsiliste protsessoritega, nagu CPU või GPU, midagi pistmist. Selle asemel on see programmeerimistermin, mis on konkreetselt seotud kompileeritud keeltega.

Mis on kompilaator?

Kompilaator on tarkvara, mis kompileerib konkreetse programmeerimiskeele masinkoodiks. Kõik programmeerimiskeeled tuleb teisendada masinkoodiks, kuna inimloetavad käsud, mis moodustavad kasutatavad programmeerimiskeeled, ei ole arvutis otseselt käivitatavad. Mõned neist on loodud koodi käitamise ajal käigupealt tõlgendamiseks. See lähenemine on väga paindlik, mistõttu on kerge teha väiksemaid muudatusi. Paljud teised programmeerimiskeeled tuleb aga käivitamiseks kompileerida. Väikestes programmides ei võta see tingimata kaua aega. Suuremate programmide puhul võib koostamine võtta minuteid või isegi tunde.

Miks sa siis tahad kasutada keelt, mis vajab kompileerimist? No pöördprojekteerida on raskem. Tõlgendatud programmeerimiskeelte kood levitatakse sageli sellisel kujul, mis muudab selle "varastamise" lihtsaks. Ettevõtetele, kes soovivad kaitsta oma intellektuaalomandit, lisab kompileerimine tegeliku koodi nägemiseks keeruka ja ebausaldusväärse pöördprojekteerimise etapi. Kompileeritud tarkvara kipub ka väiksemaks jääma, kuna on täitmiseks optimeeritud. Väikeste skriptide puhul pole see tegelikult probleem, kuid suure, sadade megabaidiste või isegi gigabaitide suuruse tarkvaraga tegelemisel võib sellel olla märgatav mõju.

Mida siis eeltöötleja teeb?

Eelprotsessor on utiliit, mis käivitatakse koodi üle enne selle kompileerimist. Tavaliselt helistab kompilaator automaatselt eelprotsessorile, kui see käivitub, kuid neid saab käivitada ka eraldi. Eeltöötleja ülesanne on seadistada kood täpselt nii, nagu ette nähtud. See teeb seda peamiselt otsingu ja asendamise funktsioonide täitmisega.

Näiteks C-s on tavapärane kasutada mitmeid standardseid teeke. Need teegid määratlevad rea funktsioone, mis pakuvad standardseid funktsioone. Nende teekide importimiseks kasutatakse märksõna „#include”, millele järgneb teegi nimi. Eelprotsessor otsib koodist selliseid lauseid nagu „#include” ja asendab need. "#include" korral sisestab eelprotsessor kogu määratud teegi sisu.

See võimaldab teil hoida tegelikult kirjutatud koodi hõlpsasti loetavana, kasutades samal ajal paljusid võimsaid ja olemasolevaid tööriistu. See säästab teid selle eest, et te ei pea iga rakenduse jaoks ratast uuesti leiutama ega kleepima osa või kogu teegi koodibaasi.

Eelprotsessori teine ​​​​potentsiaalne kasutusala on teatud funktsioonide eemaldamine või lisamine olenevalt ehitamise eesmärgist. Näiteks kui soovite testida uut järgu, võib olla tõesti kasulik lisada hulk silumistoiminguid. Neid ei ole mitte ainult väljalaskeversioonis vaja, vaid muudavad kompileeritud tarkvara ka suuremaks. Eelprotsessor saab kontrollida kompilaatori argumente ja otsustada, kas teatud funktsioonid tuleb kaasata või ignoreerida. Sarnaselt sellele eemaldab eeltöötleja tavaliselt kommentaarid enne kompilaatorit, kuna neid ei tohiks järgmisse kaasata.

Järeldus

Eelprotsessor on kompilaatori käitatav tööriist koodiga manipuleerimiseks enne selle tegelikku kompileerimist. Kuigi eelprotsessorit saab kutsuda eraldi, nimetatakse seda tavaliselt kompileerimisprotsessi osana. Eelprotsessor otsib teatud määratletud stringe ja asendab need standardse sisuga. Kommentaaride puhul asendust ei ole, kuid väliseid teeke sisaldavate avalduste puhul asendab eeltöötleja avalduse tegeliku teegi sisuga. Eelprotsessor võib teatud funktsioonide väravaks kasutada ka kompileerimisaja argumente. Seda kasutatakse sageli silumisfunktsioonide kaasamiseks või välistamiseks test- või väljalaskejärgudesse.


Mis on SMPS?

Mis on SMPS?

Enne oma arvutile SMPS-i valimist uurige, mis on SMPS ja mida tähendab erinevate tõhususe reiting.

Mis on isolatsioonipõhine turvalisus?

Mis on isolatsioonipõhine turvalisus?

Kavatsesin süveneda teemasse, mis muutub küberturvalisuse maailmas üha olulisemaks: isolatsioonipõhine turvalisus. See lähenemine

Kuidas kasutada automaatset klikkerit Chromebooki jaoks

Kuidas kasutada automaatset klikkerit Chromebooki jaoks

Täna kavatsesime süveneda tööriista, mis suudab teie Chromebookis korduvaid klõpsamisi automatiseerida: automaatset klõpsurit. See tööriist võib säästa teie aega ja

Roomba peatub, jääb kinni ja pöörab ümber – paranda

Roomba peatub, jääb kinni ja pöörab ümber – paranda

Lahendage probleem, kus teie Roomba robottolmuimeja peatub, kinni jääb ja pöörleb pidevalt ümber.

Miks minu Chromebook ei lülitu sisse?

Miks minu Chromebook ei lülitu sisse?

Hankige vastused küsimusele, miks minu Chromebook ei lülitu sisse? Selles kasulikus juhendis Chromebooki kasutajatele.

Kuidas muuta Steam Decki graafikaseadeid

Kuidas muuta Steam Decki graafikaseadeid

Steam Deck pakub jõulist ja mitmekülgset mängukogemust otse teie käeulatuses. Kuid selleks, et optimeerida oma mängimist ja tagada parim võimalik

Kuidas muuta Fitbit Versa 4 kella numbrit

Kuidas muuta Fitbit Versa 4 kella numbrit

Muutke oma Fitbit Versa 4 kella sihverplaati, et anda oma kellale iga päev tasuta uus välimus. Vaadake, kui kiire ja lihtne see on.

Kuidas Googleile andmepüügipettustest teatada

Kuidas Googleile andmepüügipettustest teatada

Sellest juhendist leiate teavet selle kohta, kuidas petturist Google'ile teatada, et vältida teiste petmist.

Kuidas eemaldada GPU Windowsi arvutist 2023. aastal

Kuidas eemaldada GPU Windowsi arvutist 2023. aastal

Kas peate GPU arvutist eemaldama? Liituge minuga ja selgitan selles samm-sammulises juhendis, kuidas GPU arvutist eemaldada.

Mis on õlasurf?

Mis on õlasurf?

Õlas surfamine on sotsiaalse manipuleerimise rünnak. See hõlmab ründajat, kes kogub teavet teie ekraani vaadates.