Forskellen mellem debugger og compiler

Forskellen mellem debugger og compiler
Forskellen mellem debugger og compiler

Video: Forskellen mellem debugger og compiler

Video: Forskellen mellem debugger og compiler
Video: ОТКРЫЛИ МЫЛО И ОХ%#ЕЛИ | Сравнение Мыл 2024, November
Anonim

Debugger vs Compiler

Generelt er compiler et computerprogram, der læser et program skrevet på ét sprog, som kaldes kildesproget, og oversætter det til et andet sprog, som kaldes målsproget. Traditionelt var kildesprog et sprog på højt niveau, såsom C++, og målsprog var et sprog på lavt niveau, såsom assemblersprog. Debugger er et computerprogram, der bruges til at finde fejl/fejl i andre programmer. Debugger gør det muligt for en programmør at stoppe udførelse af et program på et tidspunkt og undersøge karakteristika såsom variable værdier på det tidspunkt.

Hvad er en debugger?

Debugger er et computerprogram, der bruges til at finde fejl/fejl i andre programmer. Debugger gør det muligt at udføre et program og inspicere hvert trin i programafviklingen. Det gør det også muligt at stoppe udførelsen af programmet på et tidspunkt og ændre nogle variable værdier og derefter fortsætte udførelsen. Alle disse muligheder er tilvejebragt for at hjælpe programmøren med at sikre sig, at hendes program opfører sig korrekt og for at hjælpe med at identificere fejl i koden. De fleste af debuggere giver mulighed for at udføre et program trin for trin (også kaldet single stepping), og holder pause for at undersøge programmets aktuelle tilstand ved at angive et breakpoint og spore variabelværdier. Nogle avancerede debuggere gør det muligt for programmøren at springe over en placering, der forårsager et nedbrud eller en logisk fejl i koden, og fortsætte eksekveringen fra en anden placering. Nogle af de populære debuggere er GNU Debugger (GDB), Microsoft Visual Studio Debugger osv.

Hvad er en compiler?

Compiler er et computerprogram, der læser et program skrevet på ét sprog, som kaldes kildesproget, og oversætter det til et andet sprog, som kaldes målsproget. Oftest er kildesproget et sprog på højt niveau, og målsproget er et sprog på lavt niveau. Så generelt kan kompilatorer ses som oversættere, der oversætter fra et sprog til et andet. Derudover udfører compilere nogle optimeringer til koden. En typisk compiler består af flere hovedkomponenter. Den første komponent er scanneren (også kendt som den leksikale analysator). Scanner læser programmet og konverterer det til en række tokens. Den anden komponent er parseren. Det konverterer strengen af tokens til et parsetræ (eller et abstrakt syntakstræ), som fanger programmets syntaktiske struktur. Næste komponent er de semantiske rutiner, der fortolker semantikken i den syntaktiske struktur. Dette efterfølges af kodeoptimeringer og endelig kodegenerering.

Hvad er forskellen mellem en debugger og en compiler?

Debugger er et computerprogram, der bruges til at finde fejl/fejl i andre programmer, mens compiler er et computerprogram, der læser et program skrevet på ét sprog og oversætter det til et andet sprog. Kompilere har også evnen til at opdage syntaksfejl og andre kompileringstidsfejl, men debuggere giver flere muligheder (såsom overvågning af hukommelsen) til at opdage fejl i programmer. Disse to er to forskellige programmer, men oftest er en debugger og en compiler integreret i en enkelt pakke.

Anbefalede: