Commentaires sur le codage de programme :
Dans ce codage de programme, fondamentalement nous nous poursuivons pour exécuter le suivant ceux-ci charge point par point :
- Le dbuf statique d'amortisseur de données-caractères [512] est fourni l'information de 512 bytes dans le système hexadécimal, qui doit être écrit dans le premier secteur du disque souple illisible. le dbuf [512] indique l'ordinateur pendant l'opération que quelle information doit être écrite dans le premier secteur du disque souple. (Voir le prochain programme)
- le dinfo se dirige à la structure de diskinfo_t qui contient l'information des paramètres exigés par l'opération effectuée par la fonction de _bios_disk.
- Car nous allons écrire l'information sur le premier secteur du disque donc l'endroit du secteur sera comme suit :
Paramètre |
Ce que signifie il |
dinfo.drive = 0x00 |
Il indique le lecteur 0 qui est l'unité de disquettes (a :) |
dinfo.head = 0 |
Il se dirige au numéro principal 0 |
dinfo.track = 0 |
Il se dirige à la voie 0 |
dinfo.sector = 1 |
Premier secteur du disque souple qui est le secteur 1 |
dinfo.sector = 1 |
Le nombre de secteurs à considérer pour écrivent l'opération = 1 |
dinfo.buffer = dbuf |
Les données protègent pour l'opération |
- Initialiser le système de disque en utilisant l'interruption 13H (fonction 00h) où regs.h.ah = 0x00 se dirige à la fonction 00 H et regs.h.dl = 0x00 est employé pour a : souple. Et int86 (0x13, ®s, ®s) appelle le service 13 INTERNES H. d'interruption de MS-DOS.
- le _bios_disk (_DISK_WRITE, &dinfo) écrit l'information d'initialisation à partir du dossier indiqué au premier secteur (indiqué) de la disquette.
Le statut retourné est stocké dans le résultat qui est employé pour montrer le message pour l'opération réussie ou pour montrer un message d'erreur sur l'écran si n'importe quelle erreur se produit.
Stockage de l'image d'initialisation en caractères HEXADÉCIMAUX pour employer dans notre programme précédent
Ce sera un travail très difficile d'écrire à chacun des 512 les caractères du disque d'initialisation du DOS du disque souple manuellement dans le système hexadécimal sans n'importe quelle erreur dans le programme que nous avons récemment discuté. Si nous pouvons l'écrire exactement pour égaliser qu'il sera un difficile et la prise de temps chargent de faire ceci. Employons un certain esprit rusé pour stocker les données pour le dbuf d'amortisseur de données [512] dans un dossier.
Nous savons que dans le programme C Les caractères hexadécimaux sont représentés avec 0x tels que si le caractère hexadécimal est A9 H, nous écrirons ceci dans notre programme C Comme 0xA9. Notre prochain programme fait la même chose. Il stockera les données que nous devons écrire dans notre programme précédent, car les données des données protègent le dbuf [512].
|