Int 16h

Int 16h

INT 16h es la forma abreviada de la interrupción 0x16. Esta interrupción se encarga de controlar el teclado del PC.

Contenido

Características

Esta interrupcion se encarga de obtener funcionalidades básicas del teclado, es decir, se encarga de recoger las pulsaciones del teclado, obtener el estado del buffer del teclado, etc. La codificación estándar del teclado que ofrece la INT 16h es de un teclado Estadounidense. Para adaptar la codificación de la INT 16h a otro tipo de teclado (por ejemplo, un teclado español) hay que atender al scan-code de la tecla pulsada y realizar las operaciones convenientes para interpretar la tecla que se desea.

En los teclados de 101 letras o más, existen unas teclas que la INT 16h las interpreta como teclas expandidas, que tienen un scan-code distinto al de las teclas normales (por ejemplo, la tecla pausa).

Lista de servicios de la INT 16h

AH = 00h Teclado Leer pulsación de tecla
AH = 01h Teclado Obtener el estado del buffer del teclado
AH = 02h Teclado Obtener el estado del teclado
AH = 03h Teclado Establecer factor de repetición
AH = 05h Teclado Simular la pulsación de una tecla
AH = 0Ah Teclado Obtener el ID del teclado
AH = 10h Teclado expandido Leer carácter del teclado expandido
AH = 11h Teclado expandido Obtener estado del buffer del teclado expandido
AH = 12h Teclado expandido Obtener estado del teclado expandido

INT 16h AH=00h - Leer pulsación de tecla

Parámetros:

AH = 00h Leer pulsación de tecla

Retorna:

AH = ?? Scan-code de la tecla pulsada
AL = ?? Carácter ASCII de la tecla pulsada

Ejemplo:

;Este ejemplo lee una tecla del teclado y si la tecla pulsada es la de la tecla "ñ" hace las modificaciones para
;que el contenido en AL sea la ñ.
inicio:
CALL leertecla              ;Llamamos a la funcion de leer una tecla
MOV AH,0Eh                  ;Funcion teletype
INT 10h                     ;Mostramos la tecla en pantalla
JMP inicio                  ;Hacemos un bucle eterno
 
leertecla:
XOR AX,AX                   ;Funcion 0
INT 16h                     ;Llamamos al teclado
 
CMP AH,27h                  ;¿El scancode corresponde con el scancode de la tecla "ñ"?
JE  cambiarletra            ;Sí, así que cambiamos el contenido de AL
 
RET                         ;No, así que no realizamos otra operación
 
cambiarletra:
MOV AL,0A4h                 ;Ponemos la letra "ñ" en AL
RET                         ;Volvemos de la rutina

Véase también

Enlaces externos


Wikimedia foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Mira otros diccionarios:

  • Int 10h — es la forma abreviada de la interrupción 0x10. Esta interrupción controla los servicios de pantalla del PC. Contenido 1 Características 2 Lista de funciones soportadas 3 Tabla de modos de vídeo …   Wikipedia Español

  • Int 13h — es la forma abreviada de la interrupción 0x13. Esta interrupción se encarga de las operaciones típicas de acceso a los discos duros y a los disquetes. Contenido 1 Características 2 Lista de servicios de la INT 13h 3 Tabla de unidades …   Wikipedia Español

  • FASM — Flat Assembler (FASM) …   Wikipédia en Français

  • Резидентная программа — (или TSR программа, от англ. Terminate and Stay Resident  «завершиться и остаться резидентной»)  в операционной системе MS DOS программа, вернувшая управление оболочке операционной системы (command.com), либо надстройке над… …   Википедия

  • Hello World — Pour les articles homonymes, voir Hello (homonymie). hello world (traduit littéralement en français par « bonjour le monde ») sont les mots traditionnellement écrits par un programme informatique simple dont le but est de faire la… …   Wikipédia en Français

  • Llamada de interrupción del BIOS — Las llamadas de interrupción del BIOS son una facilidad que los programas DOS, y otro tipo de porgramas como cargadores de arranque, usan para invocar las funciones del BIOS. Algunos sistemas operativos también usan el BIOS para probar e… …   Wikipedia Español

  • Zopiclone — Systematic (IUPAC) name (RS) 6 (5 chloropyridin 2 yl) 7 oxo 6,7 dihydro 5H pyrrolo[3,4 b]pyrazin 5 yl 4 methylpiperazine 1 carboxylate Clinical data Trade n …   Wikipedia

  • Liste des missions de la navette spatiale — Cette liste des missions de la navette spatiale regroupe l ensemble des missions effectuées par la navette spatiale américaine jusqu à son retrait en juillet 2011. Tous les vols sont lancés depuis l une deux aires de lancement du centre spatial… …   Wikipédia en Français

  • Benzethonium chloride — Preferred IUPAC name N Benzyl N,N dimethyl 2 {2 [4 (2,4,4 trimet …   Wikipedia

  • Hebrew calendar — The Hebrew calendar (הלוח העברי ha luach ha ivri), or Jewish calendar, is a lunisolar calendar used today predominantly for Jewish religious observances. It determines the dates for Jewish holidays and the appropriate public reading of Torah… …   Wikipedia

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”