Forskellen mellem kildeprogram og objektprogram

Indholdsfortegnelse:

Forskellen mellem kildeprogram og objektprogram
Forskellen mellem kildeprogram og objektprogram

Video: Forskellen mellem kildeprogram og objektprogram

Video: Forskellen mellem kildeprogram og objektprogram
Video: How To Farm Chia w/ Madmax Gigahorse and Chia GPU Plotter in Windows - Chia Farming Guides 2023 2024, November
Anonim

Nøgleforskellen mellem kildeprogram og objektprogram er, at kildeprogram er et program, der kan læses af mennesker, skrevet af en programmør, mens objektprogram er et maskinelt eksekverbart program oprettet ved at kompilere et kildeprogram.

Kildeprogrammer kan enten kompileres eller fortolkes til udførelse. Decompilere hjælper med at konvertere objektprogrammer tilbage til dets originale kildeprogrammer. Det er vigtigt at bemærke, at begreberne kildeprogram og objektprogram bruges som relative udtryk. Hvis du tager et programtransformationsprogram (som en compiler), er det, der går ind, et kildeprogram, og det, der kommer ud, er et objektprogram. Derfor kan et objektprogram produceret af ét værktøj blive en kildefil for et andet værktøj.

Hvad er kildeprogram?

Programmøren skriver kildeprogrammet ved at bruge sprog på et højere niveau. Derfor er den let læselig for mennesker. Kildeprogrammer indeholder norm alt betydningsfulde variabelnavne og nyttige kommentarer for at gøre det mere læsbart. En maskine kan ikke direkte udføre et kildeprogram. En compiler hjælper med at transformere kildeprogram til eksekverbar kode for at udføre af maskinen. Alternativt er at bruge en tolk. Den udfører et kildeprogram linje for linje uden præ-kompilering.

Forskellen mellem kildeprogram og objektprogram
Forskellen mellem kildeprogram og objektprogram
Forskellen mellem kildeprogram og objektprogram
Forskellen mellem kildeprogram og objektprogram

Figur 01: Et kildeprogram

Visual Basic er et eksempel på et kompileret sprog, mens Java er et eksempel på et fortolket sprog. Visual Basic-kildefiler (.vb-filer) kompileres til.exe-kode, mens Java-kildefiler (.java-filer) først kompileres (ved hjælp af javac-kommando) til bytekode (en objektkode indeholdt i.class-filer) og derefter fortolkes ved hjælp af java-fortolker (ved hjælp af java-kommando). Når softwareapplikationer distribueres, vil de typisk ikke inkludere kildefiler. Men hvis applikationen er open source, distribueres kilden også, og brugeren kan også se og ændre kildekoden.

Hvad er objektprogram?

Objektprogram er norm alt en maskineksekverbar fil, som er resultatet af kompilering af en kildefil ved hjælp af en compiler. Ud over maskininstruktioner kan de omfatte fejlfindingsoplysninger, symboler, stakoplysninger, flytning og profileringsoplysninger. Da de indeholder instruktioner i maskinkode, er de ikke let læselige af mennesker. Men nogle gange refererer objektprogrammer til et mellemobjekt mellem kilde- og eksekverbare filer.

Værktøjer kendt som linkere hjælper med at linke et sæt objekter til en eksekverbar (f.eks. C-sprog). Som nævnt ovenfor er.exe-filer og bytekodefiler objektfiler, der produceres ved brug af henholdsvis Visual Basic og Java..exe-filerne afvikles direkte på Windows-platformen, mens bytekodefiler skal have en fortolker til eksekvering.

De fleste softwareapplikationer distribueres kun med objektet eller eksekverbare filer. Det er muligt at konvertere objektet eller de eksekverbare filer tilbage til dets originale kildefiler ved dekompilering. For eksempel kan dekompileringsværktøjerne dekompilere java.class-filer(bytecode) til de originale.java-filer.

Hvad er forskellen mellem kildeprogram og objektprogram?

Kildeprogram er et program, der kan læses af mennesker, skrevet af en programmør. Det er skrevet på højere niveau sprog såsom Java eller C. Derfor er et kildeprogram læsbart af mennesker. Det er ikke forståeligt af maskinen.

På den anden side er Objekt-program et maskinelt eksekverbart program oprettet efter kompilering af et kildeprogram. Den indeholder sprog på lavere niveau, såsom montering eller maskinkode. Derfor kan objektprogrammet ikke læses af mennesket. Det er forståeligt af maskinen.

Forskellen mellem kildeprogram og objektprogram i tabelform
Forskellen mellem kildeprogram og objektprogram i tabelform
Forskellen mellem kildeprogram og objektprogram i tabelform
Forskellen mellem kildeprogram og objektprogram i tabelform

Oversigt – Kildeprogram vs objektprogram

Forskellen mellem kildeprogram og objektprogram er, at kildeprogram er et menneskeligt læsbart program skrevet af en programmør, mens objektprogram er et maskinelt eksekverbart program oprettet ved at kompilere et kildeprogram.

Anbefalede: