Le stockage d'informations sur disque est quelque peu similaire à la représentation des informations dans un code-barres. Chaque emplacement sur une piste de disque est polarisé de deux manières, équivalant aux zones blanches et noires d'un code-barres; comme avec un code à barres, ces régions polarisées ont différentes largeurs qui sont utilisées pour coder les données. Le codage réel est cependant différent, car les codes-barres sont généralement utilisés pour contenir soit des chiffres décimaux, soit des caractères choisis dans un ensemble relativement petit (43 caractères dans le cas du code 39), tandis que les lecteurs de disque sont utilisés pour stocker 256 octets en base. Notez que les anciennes technologies d'entraînement n'utilisaient que trois largeurs de régions d'impulsions magnétiques, dont la plus large était trois fois la largeur de la plus étroite. Les nouvelles technologies d'entraînement utilisent beaucoup plus de largeurs, étant donné que la largeur de la région la plus étroite que le support peut supporter est considérablement plus large que la distance minimale discernable entre les largeurs. Dans les années 80, l'augmentation du nombre de largeurs différentes sur un lecteur avec une largeur minimale donnée augmenterait la capacité utilisable de 50%. Je ne sais pas quel est le ratio aujourd'hui.
Les informations sur un disque inscriptible au hasard sont divisées en secteurs, chacun étant précédé d'un en-tête de secteur; l'en-tête de secteur est lui-même précédé et suivi d'un écart. L'en-tête de secteur et le secteur commencent tous deux par des modèles spéciaux de largeurs de région qui ne peuvent se produire nulle part ailleurs. Pour lire un secteur, un lecteur surveille le modèle spécial qui indique "en-tête de secteur", puis lit les octets qui le suivent. S'ils correspondent au secteur souhaité par le lecteur, il recherche alors un modèle indiquant "en-tête de données" et lit les données associées. Si les données ne correspondent pas au secteur d'intérêt, le lecteur revient à la recherche d'un autre "en-tête de secteur".
Écrire un secteur est un peu plus délicat. L'électronique d'entraînement prend un temps court mais non nul (et pas entièrement prévisible) pour basculer entre les modes lecture et écriture. Pour y faire face, les lecteurs n'écrivent des données que sur un secteur entier à la fois. Pour écrire un secteur, le lecteur démarre en mode lecture, attend jusqu'à ce qu'il voit l'en-tête du secteur à écrire; puis il passe en mode écriture, sort les données, puis revient en mode lecture. Parce qu'il y a des lacunes avant et après la zone de données, peu importe si le lecteur passe parfois en mode d'écriture un peu plus vite ou plus lentement, à condition que (1) le modèle de démarrage d'un bloc soit précédé de certaines données qui ne 'ne correspond pas au modèle de démarrage, de sorte que même si le lecteur démarre "tard", la partie de l'ancien bloc qui n'est pas effacée l'emportera'
Lors de la lecture des données, on détermine quelles données sont représentées par un point particulier sur le disque en "comptant" les régions magnétiques vues depuis le marquage de début de bloc précédent. Lors de l'écriture de données, les données représentées par l'emplacement du disque sur lequel passe la tête seront déterminées par le décompte du contrôleur de la quantité de données écrites jusqu'à présent. Notez qu'il n'y a aucun moyen de prédire précisément quel bit sera représenté par n'importe quel point sur le disque avant qu'il ne soit écrit, car il y a une certaine quantité de "slop" dans le processus d'écriture.