Section courante

A propos

Section administrative du site

Interruption 10h

Fonction 0Ah

Écriture d'un caractère
MDA, CGA, PC Junior, EGA, MCGA, VGA, IBM 8514/A, Super VGA

Description

Cette fonction permet l'écriture d'un caractère à la position du curseur.

Entrée

Registre Description
AH 0Ah
AL Ce registre permet d'indiquer le caractère à écrire (voir la table ASCII)
BH Ce registre permet d'indiquer la page dans lequel le caractère sera écrit (la première page est ou la page par défaut, correspond à la valeur 0).
CX Ce registre permet d'indiquer le nombre de caractères à écrire (facteur de duplication)
Si mode graphique
BL Ce registre permet d'indiquer la couleur avec lequel le caractère sera écrit.

Sortie

 Aucune

Remarques

Exemple

L'exemple suivant, en Turbo Pascal, permet d'afficher une chaine de caractères «Gladir.com!» en haut de l'écran :

  1. Program Write0AhSamples;
  2.  
  3. Procedure LocateXY(X,Y:Byte);Assembler;ASM
  4.   MOV DH,Y
  5.   MOV DL,X
  6.   MOV AH,02h
  7.   MOV BH,0
  8.   INT 10h
  9. END;
  10.  
  11. Procedure WriteChar(C:Char);Assembler;ASM
  12.  MOV AH,0Ah
  13.  MOV AL,Byte(C)
  14.  MOV BL,7
  15.  MOV BH,0
  16.  MOV CX,1
  17.  INT 10h
  18. END;
  19.  
  20.  
  21. Procedure WriteString(Const S:String);
  22. Var
  23.  I:Byte;
  24. Begin
  25.  For I:=1 to Length(S)do Begin
  26.   LocateXY(I-1,0);
  27.   WriteChar(S[I]);
  28.  End;
  29. End;
  30.  
  31. BEGIN
  32.  WriteString('Gladir.com!');
  33. END.

on obtiendra le résultat suivant sur la première ligne d'affichage :

Gladir.com!

Références

La Bible du PC: Programmation système - Sixième Edition, Edition Micro-Application, Michael Tischer, 1996, ISBN: 2-7429-0544-8, page 1584.
Aide-mémoire des interruptions du MS-DOS, Edition Marabout, Philippe Mercier, 1990, ISBN: 2-501-01297-6, page 46 à 47.
The Undocumented PC: A programmer's Guide to I/O, CPUs, and Fixed Memory Areas - Second Edition, Edition Addison-Wesley, Frank van Gilluwe, 1997, ISBN: 0-201-47950-8, page 403.

Dernière mise à jour : Jeudi, le 3 mars 2016