IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Turbo Pascal Discussion :

[TP]code pour lire secteur disque


Sujet :

Turbo Pascal

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 71
    Points : 59
    Points
    59
    Par défaut [TP]code pour lire secteur disque
    bonjour,

    je souherais écrire un programme qui puisse lire un secteur d'un disque, (puis l'afficher).
    QQn aurait-il une idée (avec Pascal V7) ?

    (le but est d'expliquer à des élèves la FAT et la complexité d'accès, masquée par le SGF)

    Merci

  2. #2
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 465
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 465
    Points : 4 312
    Points
    4 312
    Par défaut
    Pour lire un secteur de disque dur, il faut passer par l'interruption 13h, et la sous-fonction 2h :

    Citation Envoyé par Ralf Brown
    INT 13 - DISK - READ SECTOR(S) INTO MEMORY
    AH = 02h
    AL = number of sectors to read (must be nonzero)
    CH = low eight bits of cylinder number
    CL = sector number 1-63 (bits 0-5)
    high two bits of cylinder (bits 6-7, hard disk only)
    DH = head number
    DL = drive number (bit 7 set for hard disk)
    ES:BX -> data buffer
    Return: CF set on error
    if AH = 11h (corrected ECC error), AL = burst length
    CF clear if successful
    AH = status (see #0144)
    AL = number of sectors transferred (only valid if CF set for some
    BIOSes)
    Voilà, le code n'est pas très difficile à écrire à partir de là

    a+

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 71
    Points : 59
    Points
    59
    Par défaut
    je te remercie pour ta réponse

    il faut inclure le code en assembleur dans un prog Pascal ou bien on peut directement écrire le code Pascal ?

  4. #4
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 465
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 465
    Points : 4 312
    Points
    4 312
    Par défaut
    Citation Envoyé par patdez
    il faut inclure le code en assembleur dans un prog Pascal ou bien on peut directement écrire le code Pascal ?
    Comme tu le souhaites, car Turbo Pascal permet d'inclure de l'assembleur dans le code source, mais fournit également des outils permettant de manipuler les registres et d'appeler des interruptions...

    Pour inclure du code assembleur dans le code source, il faut déclarer un bloc asm ... end. Pour utiliser les registres, on utilise le type registers et la procédure Intr pour appeler une interruption... Consulte l'aide de ton compilateur ou fais une recherche sur le forum si tu souhaites obtenir plus d'informations

    Ai-je répondu à la question ?

    a+

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 71
    Points : 59
    Points
    59
    Par défaut
    ok, c'est bon
    je vais essayer directement en Pascal
    merci encore

  6. #6
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    J'ai un programme tout prêt qui fait déjà ça, en BP7. Avé les sources, bien entendu.
    Si tu le veux, envoie-moi un MP.

    Note : si tu crashes tes disques durs avec, je décline toute responsabilité !! :-D

    Par contre, je n'ai retrouvé qu'une (assez) ancienne version des sources : ça marche, pas de problèmes, mais ça ne marchera pas sur un P2 sauf si tu as patché ta librairie CRT. Hormis ça, c'est pas super beau, mais c'est fonctionnel.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Rech code pour lire flux stream camera IP DCS 950 DLink
    Par altair8080 dans le forum Visual C++
    Réponses: 5
    Dernier message: 01/02/2010, 14h57
  2. code pour lire des carte à puce
    Par kuzamba dans le forum Général VBA
    Réponses: 1
    Dernier message: 18/05/2007, 09h14
  3. difference entre 2 codes pour lire un fichier svp.
    Par Slumpy dans le forum VB.NET
    Réponses: 2
    Dernier message: 10/05/2007, 10h11
  4. Code pour lire secteur disque & structure FAT
    Par patdez dans le forum Assembleur
    Réponses: 5
    Dernier message: 26/10/2004, 19h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo