Imprimir caracter
Este es el código de la función imprimir_caracter
de DariOS
Explicación de la función imprimir_caracter
La función imprimir_caracter
se utiliza para mostrar un solo carácter en pantalla utilizando los servicios del BIOS. Está escrita para arquitectura x86 en modo real (16 bits).
Propósito
Esta función toma el valor almacenado en el registro AL
(código ASCII del carácter) y lo imprime en pantalla.
Lógica paso a paso
push ax
- Guarda el contenido del registro
AX
en la pila para preservar su valor.
mov ah, 0x0E
- Carga el número de función
0x0E
enAH
, que indica a la BIOS que debe mostrar un carácter en modo TTY.
int 0x10
- Llama a la interrupción
0x10
del BIOS con la función0x0E
. Esta imprime el carácter que se encuentra enAL
.
pop ax
- Restaura el valor original de
AX
desde la pila, dejando el registro como estaba antes de entrar a la función.
ret
- Termina la subrutina y devuelve el control al programa que la llamó.
Requisitos
- El registro
AL
debe contener el valor ASCII del carácter a mostrar. - La interrupción BIOS
0x10
debe estar disponible (modo real).
Uso típico
Esta función es llamada por otras rutinas, como imprimir_cadena
, para imprimir texto carácter por carácter:
mov al, 'A'
call imprimir_caracter