//////// Δεκαδικό στη δυαδική λειτουργία μετατροπής \\\\\\\\
Decimal_to_Binary(unsigned long input)
{
unsigned long i;
int count = 0;
int binary [32]; /* 32 Bit MAX only 32
elements total */
do
{
i = input%2; /* MOD 2 to get 1 or a 0*/
binary[count] = i; /* Load Elements into the
Binary Array */
input = input/2; /* Divide input by 2 to
decrement via binary */
count++; /* Count how many elements
are needed */
}while (input > 0);
/* Δυαδικά ψηφία αντιστροφής και παραγωγής */
do
{
printf ("%d", binary[count - 1]);
count--;
} while (count > 0);
return 0;
}
Όταν το πρόγραμμα οργανώνεται για να διαβάσει το DBR ενός μεγάλου όγκου, η παραγωγή του προγράμματος επιδεικνύεται ως εξής:
Jump Instruction Code = EB5890 (H)
OEM name and version = MSWIN4.1
Bytes per sector = 512
Sectors per cluster = 8
Reserved sectors = 32
FAT copies = 2
Root directory entries = 0
No. of sectors on disk = 0
Media Descriptor Byte = F8 (H)
Sectors per FAT = 0
Sectors per track = 63
No. of sides = 255
No. of reserved (Hidden) sectors = 63
=========== For Large (>32MB) Disks ===========
No. of sectors, (if Volume is >32MB) = 11277567
Number of Sectors per FAT = 11003
Root Directory Starting Cluster = 2
File System Information Sector = 1
Sector Number of Backup Boot Sector = 6
Physical Drive Number = 80 (H)
Extended Boot Signature = 29 (H)
32-Bit Binary Volume ID = 110101010001100001110111100101 (B)
Volume Label = SAAYA
FAT name = FAT32
Magic Number = 55AA (H) |
Στην παραγωγή του προγράμματος βλέπουμε ότι οι ακόλουθες παράμετροι παρουσιάζονται μηδέν:
- Είσοδος καταλόγου ρίζας
- Αριθμός τομέων σε δίσκο
- Τομείς του αριθμού ανά FAT
Αυτές οι παράμετροι είναι έτσι επειδή αυτές οι τιμές τίθενται μηδέν, εάν ο όγκος χωρισμάτων είναι μεγαλύτερος έπειτα 32MB στο μέγεθος και τις πραγματικές πληροφορίες βρίσκεται στον εκτεταμένο φραγμό πληροφοριών όγκου του DBR.
Παραδείγματος χάριν, στο αρχικό μέρος των πληροφοριών DBR, ο αριθμός τομέων ανά FAT είναι 0 και στον εκτεταμένο φραγμό πληροφοριών όγκου DBR ο αριθμός τομέων ανά FAT είναι 11003, το οποίο είναι η πραγματική αξία για αυτόν τον μεγάλο όγκο.
Το DBR του όγκου έχει τις σημαντικές πληροφορίες για τις παραμέτρους δίσκων, οι οποίες μπορούν να χρησιμοποιηθούν για να συνδέσουν όλες τις πληροφορίες στοιχείων για τον προγραμματισμό του σκοπού. Παραδείγματος χάριν, εάν θέλετε να έχετε πρόσβαση στο DBRs άλλου όγκου χωρισμάτων σε δίσκο, μπορείτε να το υπολογίσετε από τον αριθμό τομέων, που γράφεται σε DBR και άλλες σχετικές πληροφορίες.
Εάν θέλετε να έχετε πρόσβαση στο δίσκο με την προσέγγιση συστάδων, μπορείτε να κάνετε τους υπολογισμούς με τη βοήθεια των τομέων ανά συστάδα, τομείς ανά το FAT και άλλες πληροφορίες.
Εάν χρησιμοποιείτε το σκληρό δίσκο μεγαλύτερο από 8,4 ΜΒ (Δείτε το κεφάλαιο, "λογική προσέγγιση στους δίσκους και το OS", συζήτησε νωρίτερα σε αυτό το βιβλίο), επεκτάσεις χρήσης για να έχει πρόσβαση σε όλα τα DBR του δίσκου πέρα από 8,4 ΜΒ. Αναφέρετε τις εκτεταμένες ανάγνωσεις-γραφής λειτουργίες, που δίνονται στα προηγούμενα κεφάλαια
|