Les programmes obtiennent l'information d'attribution d'entraînement pour l'intdosx d'intdos de fonctions d'utilisation de disque

Files Recovery Software
Accueil Coordonnées Soutien à la clientèle Télécharger la démo Produits  

 
 

Les intdos et l'intdosx de fonctions exécutent l'interruption 0x21 de DOS pour appeler une fonction indiquée de DOS. La valeur d'inregs->h.ah indique la fonction de DOS à appeler. L'intdosx de fonction copie également les segregs - des >ds et des segregs - des >es que les valeurs dans les registres correspondants avant d'appeler le DOS fonctionnent et puis reconstituent le DS.

Ce dispositif des fonctions permet les programmes qui emploient les indicateurs lointains ou un grand modèle de mémoire de données indiquent quel segment doit être employé pour l'exécution de fonction. Avec la fonction d'intdosx vous pouvez appeler une fonction de DOS qui prend une valeur de DS différente du segment de données de défaut et/ou prend un argument dans l'es.

Les les deux les fonctions renvoient la valeur de la HACHE à la fin de l'appel de fonction de DOS et si le drapeau de porter est placé (des outregs - > x.cflag ! = 0), il indique qu'une erreur s'est produite.

Après que l'interruption 0x21 retourne les fonctions copient les valeurs courantes de registre aux outregs, statut du drapeau de porter au champ de x.cflag dans les outregs et la valeur des 8086 drapeaux s'enregistrent au champ de x.flags dans les outregs. Les inregs et les outregs peuvent se diriger à la même structure. Voyons les exemples de ces fonctions.

L'exemple de l'utilisation de la fonction d'intdos a été donné ci-dessous. Ce programme obtient les informations choisies sur (1.44Mb, disquette de pouce de 3 ½) l'unité de disques souple. Ce programme fournit les informations d'attribution d'une disquette.

/* L'information d'attribution d'entraînement d'obtenir pour l'utilisation de disque */

#include <dos.h> /* pour les intdos () et l'union REGS */
#include <stdio.h> /* pour le printf() */

union REGS inregs, outregs;

void main()
{
inregs.h.ah = 0x36; /* obtenir à disque le nombre libre de fonction de l'espace */
inregs.h.dl = 0x01; /* conduire A: */

intdos(&inregs, &outregs);

printf("%d sectors/cluster,\n%d clusters,\n%d bytes/sector,
\n%d total clusters",
outregs.x.ax,outregs.x.bx,
outregs.x.cx, outregs.x.dx);
getch();
}

Et le rendement du programme sera comme ceci:

1 sectors/cluster,
1933 clusters,
512 bytes/sector,
2843 total clusters


Previous page

page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18


page 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |

35 | 36 | 37 | 38

Next page
 
 
Récupération de données livre
 
Chapitre 1 Une vue d'ensemble de rétablissement de données
Chapitre 2 Introduction des disques durs
Chapitre 3 Approche logique aux disques et à l'OS
Chapitre 4 Systèmes de numération
Chapitre 5 Introduction de la programmation de C
Chapitre 6 Introduction aux fondations d'ordinateur
Chapitre 7 Commandes nécessaires de DOS
Chapitre 8 Fonctions et interruptions de Disque-BIOS manipulant avec C
Chapitre 9 Manipulation de grands disques durs
Chapitre 10 Rétablissement de données de disque souple corrompu
Chapitre 11 Fabrication des protections
Chapitre 12 MBR de lecture et de modification avec la programmation
Chapitre 13 DBR de lecture et de modification avec la programmation
Chapitre 14 Programmation pour le rétablissement " de dossier cru "
Chapitre 15 Programmation pour des essuie-glace de données
Chapitre 16 Développer plus d'utilités pour des disques
Annexe Glossaire des limites de rétablissement de données
 
 
Pro Data Doctor

Accueil

Produits

Coordonnées

Soutien à la clientèle

Télécharger la démo

Conditions générales de vente

 
Pro Data Doctor