Silur vs kompilaator
Üldiselt on kompilaator arvutiprogramm, mis loeb ühes keeles kirjutatud programmi, mida nimetatakse lähtekeeleks, ja tõlgib selle teise keelde, mida nimetatakse sihtkeeleks. Traditsiooniliselt oli lähtekeel kõrgel tasemel keel nagu C ++ ja sihtkeel oli madal keel, näiteks assamblee keel. Silur on arvutiprogramm, mida kasutatakse vigade leidmiseks teistest programmidest. Silur võimaldab programmeerijal peatada programmi täitmine ühes punktis ja uurida selliseid omadusi nagu muutuja väärtused selles punktis.
Mis on silur?
Silur on arvutiprogramm, mida kasutatakse vigade leidmiseks teistest programmidest. Silur võimaldab programmi käivitada ja kontrollida iga programmi täitmise sammu. Samuti võimaldab see ühel hetkel peatada programmi käivitamise ja muuta muutuja väärtusi ning seejärel jätkata täitmist. Kõik need võimalused on ette nähtud selleks, et aidata programmeerijal veenduda, et tema programm käitub õigesti, ja aidata tuvastada koodis olevaid vigu. Enamik siluritest võimaldab programmi järk-järgult käivitada (nimetatakse ka üheastmeliseks), tehes pausi programmi praeguse oleku uurimiseks, pakkudes katkestuspunkti ja jälgides muutujate väärtusi. Mõned edasijõudnud silurid võimaldavad programmeerijal vahele jätta kood, mis põhjustab krahhi või loogilise tõrke koodis, ja jätkata täitmist muust asukohast. Mõned populaarsed silurid on GNU silur (GDB), Microsofti Visual Studio silur jne.
Mis on koostaja?
Compiler on arvutiprogramm, mis loeb ühes keeles kirjutatud programmi, mida nimetatakse lähtekeeleks, ja tõlgib selle teise keelde, mida nimetatakse sihtkeeleks. Kõige sagedamini on lähtekeeleks kõrgetasemeline keel ja sihtkeeleks madalkeelne keel. Seega võib kompilaatoreid pidada tõlkijateks, kes tõlgivad ühest keelest teise. Lisaks teevad kompilaatorid koodi mõningaid optimeerimisi. Tüüpiline kompilaator koosneb mitmest põhikomponendist. Esimene komponent on skanner (tuntud ka kui leksikaalne analüsaator). Skanner loeb programmi ja teisendab selle märgimärgiks. Teine komponent on parser. See teisendab märkide stringi sõelumispuuks (või abstraktseks süntaksipuuks), mis haarab programmi süntaktilise struktuuri. Järgmine komponent on semantilised rutiinid, mis tõlgendavad süntaktilise struktuuri semantikat. Sellele järgneb koodi optimeerimine ja koodi lõplik genereerimine.
Mis vahe on siluril ja kompilaatoril?
Silur on arvutiprogramm, mida kasutatakse vigade / vigade leidmiseks teistest programmidest, kompilaator aga arvutiprogramm, mis loeb ühes keeles kirjutatud programmi ja tõlgib selle teise keelde. Kompilaatoritel on võimalus avastada ka süntaksivigu ja muid kompileerimisvigu, kuid silurid pakuvad programmis olevate vigade avastamiseks rohkem võimalusi (näiteks mälu jälgimine). Need kaks on kaks erinevat programmi, kuid enamasti on silur ja kompilaator integreeritud ühte paketti.