com

Fichier com

 

Remarque : Les programmes com sont aujourd'hui très peu utilisés en raison des limites qu'ils imposent (en terme de taille surtout) et ils ont été remplacés par les exe, bien connu de tous.

Le programme :

code    SEGMENT                ;definition du segment
        org     100h           ;definition du PSP
        assume  cs:code        ;identification de prog comme le segment code
start:  jmp     debut          ;saut a debut

; -- routine(s) du programme (sous programme) --
sous_prog1   proc    near      ;debut de la routine
        ;...
        ;...
        ;...

sous_prog1   endp              ;fin de la routine

debut:                         ;ici debute le programme prinipal
        ;inserer ici les instructions du programme
        ;...
        ;...
        ;...
        int 20h                ;instruction de terminaison

code    ends                   ;fin du segment
        end     start          ;le programme commence a l'instruction start
EXPLICATION :
  1. Les programmes COM :
    1. sont contenus dans un seul segment. Il a pour nom ici code
    2. ne doivent pas depasser 64 Kilo Octet
    3. doivent commencer à l'adresse 0100h, c'est le PSP
    4. tous les registres sont associés au seul et même segment
  2. Le code du programme est encadré par les déclarations d'ouverture et de fermeture d'un segment :
    - nom_segment SEGMENT
    - nom_segment ENDS

  3. L'instruction qui vient après l'ouvertue du segment est ORG 100h. Cela signifie que le programme commencera à l'adresse 100h et que l'on ajoutera 100h (soit 256) à tous les offsets puisque le PSP qui est chargé avant le programme occupe les 256 premiers octets (caractéristique d'un programme com).

retour