Question Quelle partie d'un ordinateur fait des lettres?


Comme dans les anciens ordinateurs avec DOS et autres, ils ne montraient que des lettres à largeur fixe sur l'écran ...

Quelle partie fonctionnelle de ces ordinateurs avait pour tâche d’afficher les caractères physiques, puisque (je pense) les systèmes d’exploitation originaux n’avaient pas à créer chaque pixel et à la place, ils ont simplement ajouté l’octet correspondant au caractère quelque part dans la mémoire et un personnage est apparu sur l'écran?

Alors, qu'est-ce qui rend le caractère correspondant à l'octet?


4
2017-10-03 20:54


origine


en.wikipedia.org/wiki/Text_mode#Technical_basis - Ƭᴇcʜιᴇ007
Comment ai-je pas trouvé ça? :( - user1319644


Réponses:


Comme le décrit le lien de Ƭᴇcʜιᴇ007, jadis, cela était fait par du matériel spécialisé dans la carte graphique appelé générateur de caractères. Le motif de pixel correspondant à chaque caractère serait stocké dans une ROM (ou EPROM), à une adresse correspondant à la valeur ASCII du caractère (ou à un autre code de caractère, car les jeux de caractères non-ASCII étaient plus courants à l'époque). Vous pouvez modifier votre police en remplaçant la puce de caractères-ROM par une autre contenant des motifs de bits différents.

Un circuit assez simple dans la carte graphique génère alors des pixels à la volée en lisant un octet dans le tampon d'affichage, en l'utilisant comme adresse pour lire un octet de la ROM de caractères, puis en déplaçant le bit vidéo à la fois. Étant donné que l'horloge qui court ce circuit est synchronisée avec le mouvement du faisceau d'électrons dans le CRT (ou vice versa), ces bits correspondent aux pixels visibles le long d'une ligne de balayage. Lorsque le moment est venu de générer la ligne de balayage suivante, le circuit lit la ligne suivante de données de caractères dans chaque entrée de la ROM; ou s'il atteint le bas de la cellule de caractère, il passe à la ligne suivante de la mémoire d'affichage et revient à la première ligne de la mémoire de caractères.

Cela peut paraître plus compliqué que cela - il peut être implémenté avec des compteurs et des machines à états simples.

Les affichages à mappage binaire sont en fait plus simples: ils lisent simplement les éléments de la mémoire d'affichage et les remplissent sur le port vidéo sans la table de consultation intermédiaire. Cependant, cela nécessite évidemment beaucoup plus de RAM, et la RAM était vraiment chère.


4
2017-10-04 04:30





Alors, qu'est-ce qui rend le caractère correspondant à l'octet?

Dans les PC, ce matériel était appelé carte graphique (par exemple, CGA, EGA, PGA et VGA) ou carte graphique (par exemple, MDA). Celles-ci étaient sur des cartes d'extension (aka cartes).

Notez qu'une carte graphique a deux modes, texte et graphiques. En mode texte, les codes de caractères ASCII plus les autres codes définis par IBM écrits dans la mémoire vidéo utiliseraient une police intégrée pour rendre le texte dans un format fixe sur l'écran (par exemple, 24 lignes x 80 colonnes pour VGA).

Le mode texte n'est pas obsolète, comme vous le pensez. Les systèmes d'exploitation modernes ont généralement une interface utilisateur graphique, de sorte que le mode graphique est principalement ce qui est utilisé. Mais le mode texte est toujours disponible dans toutes les cartes graphiques modernes car VGA doit être pris en charge. Les écrans de configuration du BIOS, les programmes de démarrage, Linux sans graphiques et l'écran bleu de la mort de Windows utilisent toujours le mode texte.


3
2017-10-04 02:55



"l'écran bleu de la mort de Windows utilise toujours le mode texte", pas depuis Windows 8. :) - Ƭᴇcʜιᴇ007


"Dans les temps anciens des ordinateurs avec DOS et autres", les caractères étaient écrits à l'écran par la carte vidéo. Si un programme voulait écrire du texte sur l'écran, il appellerait une interruption du BIOS. L'appel d'interruption contiendrait l'instruction (caractère d'écriture) dans l'octet supérieur du registre AX de la CPU et le caractère à imprimer serait dans l'octet inférieur. Le BIOS le remettrait à la carte vidéo et la carte vidéo dessinerait le caractère à l'écran. Tout était pris en charge dans le matériel.

Cela n'a pas été le cas depuis que DOS s'est éteint. Désormais, les systèmes d'exploitation modernes s'appuient sur l'écran à l'aide de pixels. L'apparence des caractères à l'écran est gérée par un service de rendu des polices afin que les programmes puissent toujours écrire sur l'écran en termes simples sans avoir à se préoccuper de "dessiner" des lettres à l'écran. Mais le moteur de rendu des polices communique toujours avec le matériel vidéo en termes de pixels.


2
2017-10-03 22:36



Pourriez-vous rendre votre réponse plus générique, non spécifique aux PC IBM? Apple II et TRS-80 utilisaient la carte vidéo de la même manière, mais pas la même interface BIOS. - Barmar
@Barmar N'oubliez pas Atari! - JakeGould