Sezione

Indirizzi Base Registri Interni
Area Comunicazione BIOS Funzioni BIOS Funzioni DOS
Prefazione Capitolo 1 Capitolo 2 Schede
Libreria ASM Libreria MAC Palestra Progetti ASM
Info Download INDICE

Schede del Tutorial

Home » Programma il Computer » Tutorial Assembly

Le Schede del Tutorial

  Struttura dell'Header dei Files EXE

SCHEDA n° 01 [ 2  di 4] 

    

    Analisi dell'Header con ExeMod e ExeHdr
     
bulletNella descrizione  degli argomenti del Capitolo 2 del Tutorial Assembler abbiamo fatto riferimento ai 2 programmi pilota Prova.ASM e Prova1.ASM; il programma ExeMod legge i bytes dell'Header e ne estrae una sequenza di informazioni di pronta interpretazione:

      

C:\ARCH-LAB\LAVORO> exemod  prova.exe prova1.exe
Microsoft (R) EXE File Header Utility Version 4.02
Copyright (C) Microsoft Corp 1985-1987 All rights reserved


.EXE size (bytes)
Minimum  load size (bytes)
Overlay number
Initial  CS:IP
Initial  SS:SP
Minimum allocation (para)
Maximum allocation (para)
Header size (para)
Relocation table offset
Relocation entries

hex
30E
10E
0
0000:0100
0000:0000
0
FFFF
20
1E
0

dec 
782
270
0

0
0
65535
32
30
0
      hex
      319
      119
        0
0000:0100
0000:0000
        0
     FFFF
       20
       1E
        0
dec 
93
281
0

0
0
65535
32
30
0

      

bulletIl programma ExeHdr analizza la stessa intestazione commentando il reale valore dei primi bytes dei 2 files Prova.EXE e Prova1.EXE

      

C:\ARCH-LAB\LAVORO> exehdr  prova.exe prova1.exe descrizione ufficiale
Microsoft (R) Segmented-EXE Header Utility Version 1.00
Copyright (C) Microsoft Corp 1988. All rights reserved.
Magic number:
Bytes on last page:
Pages in file:
Relocations:
Paragraphs in header:
Extra paragraphs needed:
Extra paragraphs wanted:
Initial stack location:
Word checksum:
Entry point:
Relocation table address:
Memory needed:
5a4d
010e
0002
0000
0020
0000
ffff
0000:0000
0831
0000:0100
001e
1K
5a4d
0119
0002

0000
0020
0000
ffff
0000:0000
e18a

0000:0100
001e

1K
Signature
LastPageSize
PageCount
RelocationRecords
HeaderParagraphs
MinimunAllocation
MaximunAllocation
InitialSS,InitialSP
Checksum
InitialIP,InitialCS
StartOfRelocationTable
OverlayNumber,Buffer

      

bulletA dimostrazione di questo fatto riportiamo anche il risultato dell'indagine condotta sui 2 eseguibili con DiskEdit; le tabelle mostrano solo i primi 512 bytes (l'intestazione) dei 782 bytes di Prova.EXE e dei 793 bytes di Prova1.EXE , evitando di esplicitare gli ultimi 480, tutti di valore 00H:

      

C:\ARCH-LAB\LAVORO> diskedit prova.exe

00000000: 4D 5A 0E 01 02 00 00 00 20 00 00 00 FF FF 00 00
00000010: 00 00 31 08 00 01 00 00 1E 00 00 00 01 00 00 00
 omissis < da 00000020: a 000001FF: tutti bytes a 00 >

    

C:\ARCH-LAB\LAVORO> diskedit prova1.exe

00000000: 4D 5A 19 01 02 00 00 00 20 00 00 00 FF FF 00 00
00000010: 00 00 8A E1 00 01 00 00 1E 00 00 00 01 00 00 00
 omissis < da 00000020: a 000001FF: tutti bytes a 00 >

    

NOTA: il programma DiskEdit è una tipica applicazione Dos e non può essere eseguito nell'ambiente multitasking di Windows; per questo bisogna chiudere sessione riavviando il sistema in modalità DOS.
Per i vecchi lupi c'è però un trucco per evitare tutto questo traffico: basta fare una copia del programma EXE con una estensione qualunque (per esempio Prova.XXX) e poi caricarlo in memoria con il comando Debug Prova.XXX confermato da Invio. L'indagine con -D 100 mette in evidenza il contenuto esadecimale del file eseguibile esattamente come DiskEdit!

    

Pagina Precedente Scheda n° 01 Pagina Successiva Struttura dell'Header dei Files EXE Torna al Menu delle Schede del "Tutorial" Lezioni - Vai al DownLoad dei files DOC Torna al Menu del "Tutorial"
Scheda n° 01 -  2
1 2 3 4

    

SCHEDE » 1.Header EXE 2.PseudoOp MASM 3.Differenza tra Macro e Procedure
4.
Tabella Vettori 5.PSP 6.Stack 7.Istruzioni 80x86
8.La misura dell'Informazione 9.Numeri e Logica Binaria
TUTORIAL » Indirizzi Base | Registri Interni | Area Comunicaz. BIOS | Funzioni BIOS | Funzioni DOS
Prefazione | CAP 1 | CAP 2 | Schede | Palestra
Libreria ASM | Libreria MAC | Progetti ASM | Download | Info | Indice
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati