Avatar billede Slettet bruger
31. maj 2002 - 14:30 Der er 5 kommentarer og
1 løsning

Forskel på .com og .exe-filer

Jeg kunne godt tænke mig at vide om der egentlig er en forskel på .com og .exe-filer
Jeg har studeret et par stykker i en hex-editor og har fundet ud af at de første to tegn er fælles for de fleste filer:
4D 5A
Desuden er der mange filer, hvis 3. tegn er 79 eller 90.
Når jeg så åbner fx NTDETECT.COM ser jeg, at intet i starten af den fil ligner de .exe-filer jeg har. Det samme gælder for command.com.
Kan I forklare hvad forskellen er og hvorfor der både er forskelle og ligheder i de 3 første byte i .exe-filer?
Avatar billede erikjacobsen Ekspert
31. maj 2002 - 14:55 #1
.com filer er en "gammel" opfindelse, fra den gang gode programmer ikke fyldte
mere end 64 kB i RAM - for det er max størrelse for kodesegmentet. Og så yderligere
64 kB for datasegmentet. Til gengæld kan de hurtigt hentes ind, da der ikke skal
laves adresseberegninger. Det skal der i .exe filer,

I gamle dage skulle .exe filer starte med de to tegn "MZ" (fordi ham der sad og rodede
med dem hed noget i retning af Mike Zullivan - nej jeg kan ikke huske det rigtige navn),
og det skal de vist stadig hvis det er til DOS. Til Windows behøver man det vist ikke
mere - men det er nogle år siden jeg holdt med at følge med i det :)
Avatar billede soreno Praktikant
31. maj 2002 - 14:55 #2
COM:
The COM files are raw binary executables and are a leftover from the old CP/M
machines with 64K RAM.  A COM program can only have a size of less than one
segment (64K), including code and static data since no fixups for segment
relocation or anything else is included. One method to check for a COM file is
to check if the first byte in the file could be a valid jump or call opcode, but
this is a very weak test since a COM file is not required to start with a jump
or a call. In principle, a COM file is just loaded at offset 100h in the segment
and then executed.

Lav en søgning på com og exe her:
http://www.wotsit.org/search.asp
Avatar billede Slettet bruger
31. maj 2002 - 15:04 #4
jeg vil gerne både give soreno og erikjacobsen point, så hvis erikjacobsen lige gad at give et svar på spørgsmålet :)
Avatar billede erikjacobsen Ekspert
31. maj 2002 - 15:06 #5
Mark Zbikowsky hed han - selv om jeg kunne huske det, kunne jeg alligevel
ikke stave til det. Bare giv point til Søren.
Avatar billede Slettet bruger
31. maj 2002 - 15:08 #6
ok :) tak for svarene!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester