La Web del Programador: Comunidad de Programadores
https://www.lawebdelprogramador.com/foros/Ensamblador/12815-interrupciones-de-lenguaje-ensamblador.html

interrupciones de lenguaje ensamblador

interrupciones de lenguaje ensamblador

Publicado por gaby (1 intervención) el 28/09/2000 00:00:00
*necesito que me manden informacion sobre interrupciones del leng. ensamblador

RE:interrupciones de lenguaje ensamblador

Publicado por glarenium (5 intervenciones) el 29/09/2000 00:00:00
Aunque no has especificado en concreto el tipo de informacion que necesitas referente a las interrupciones aqui te ofrezco una informacion generica:
int 00H-->division entre cero
int 01h-->un solo paso
int 02h-->interrupcion no enmascarable
int 03h--> punto de interrupcion
int 04h-->desbordamiento
int 05h-->impresion de pantalla
int 08h-->Cronometro
int 09h-->interrupcion desde el teclado
int 0Bh-->Control del puerto Com1
int 0Ch-->Control del puerto Com2
int 0Dh-->Control de dispositivos en paralelo
int 0EH-->Control de disco flexible
int 0Fh-->Control de dispositivos en paralelo 2
int 10h-->Funciones de exibicion de video
int 11h-->Determinacion del equipo
int 12h-->Determinacion tamaño de la memoria
int 13h-->Funciones del Bios, E/S
int 14h-->Comunicaciones de E/S
int 15h-->Servicios del sistema
int 16h-->Funciones de entrada del teclado
int 18h-->Entrada con el Basic de Rom
int 19h-->Cargador ed arranque
int 1Ah-->Leer y establecer la hora
int 1Bh-->Obtener el control con una interrupcion de teclado.
int 2oh-->Terminar un programa
int 21h-->Funciones del dos.
int 22h-->Direccion de terminacion
int 23h-->Direccion de Ctrl/Break
int 24h-->Manejador de error critico
int 25h-->Lectura absoluta de disco
int 26h-->Escritura absoluta de disco
int 27h-->Terminacion permaneciendo residente
int 2Fh-->Interrumpe la multiplexion
int 33h->Funciones del Raton
Esto ha sido una vision general de todas las interrupciones, espero que te sirva.

RE:interrupciones de lenguaje ensamblador

Publicado por Eric (7 intervenciones) el 17/10/2000 00:00:00
Podrias darme una breve reseña del funcionamiento de las interrupciones de la 22 a la 2F, pero principalmente de los servicios de la 2f

obtener valor desde teclado

Publicado por yomismitoo (1 intervención) el 08/12/2000 00:00:00
Esto, gracias de antemano por dedicarme tu tiempo.
Mi problema es que estoy atascado en un programa porque no sé como puedo capturar un número (de al menos 3 cifras) desde teclado y almacenarlo para luego operar con él.
Por favor, a quien pueda decirme algo, agradecido

programa de tonos en lenguaje ensamblador

Publicado por denisse (1 intervención) el 24/03/2009 03:41:50
como puedo realizar un programa de tonos usando tabla y texto y sonido y video al mismo tiempo en lenguaje ensamblador necesito hacer un proyecto con lo antes mencionado.
sin imagen de perfil

TODO????

Publicado por Jorge (126 intervenciones) el 08/10/2000 00:00:00
Aclarame que queres saber, porque el tema da para mil hojas y yo no se todo...
Estudio la Licenciatura en Informatica y estoy cursando (justo) Arquitectura, por lo que estoy frequito...

Podrias Ayudarme?

Publicado por Mauricio Parada (1 intervención) el 24/10/2000 00:00:00
He observado la web del Programador y talvez tu Jorge me puedas ayudar. Sou estudiante de Ingenieria de Sistemas en Bogotá y quiero saber sobre los servicios de interrupciones, en especial de la 21h. Ademas saber como trabajar con unidades de disquette e impresoras. Por tu atención ,muchas gracias.

RE:interrupciones de lenguaje ensamblador

Publicado por Vicente Martín (1 intervención) el 11/11/2000 00:00:00
necesito información sobre las interrupciones 10h y 21 h

hola interrupcion 17

Publicado por monse (1 intervención) el 05/01/2006 15:39:54
hola pueden ayudarme. veran necesito un programa en ensamblador que mediante la interrupcion 17 mande inprimir un acaracter.
ayudenme porffa

RE:interrupciones de lenguaje ensamblador

Publicado por bonDD (1 intervención) el 02/04/2008 05:24:10
INTERRUPCIONES

Una interrupción es un mecanismo que permite ejecutar un bloque de instrucciones interrumpiendo la ejecución de un programa, y luego restablecer la ejecución del mismo sin afectarlo directamente. De este modo un programa puede ser interrumpido temporalmente para atender alguna necesidad urgente del computador y luego continuar su ejecución como si nada hubiera pasado.
Generalmente se aplica para realizar tareas elementales asincrónicas en el computador tales como responder al teclado, escribir en la pantalla, leer y escribir archivos. Podemos considerar una tarea asincrónica como aquella que es solicitada sin previo aviso y aleatoriamente desde el punto de vista del computador. Tomemos el caso de la operación Ctrl-Alt-Supr. En Windows tiene el efecto de que aparece en pantalla una lista de los procesos y ventanas en ejecución en el computador. En cambio en el Sistema Operativo DOS cuando el usuario presiona simultáneamente dichas teclas el computador procede a reinicializarse, aunque pueda estar ocupado ejecutando un programa en ese instante. Vale decir fuerza obligadamente a que el computador se reinicialice. Ya sea en el sistema Windows o en DOS, el computador no está constantemente monitoreando el teclado para ver si el usuario ha solicitado un Ctrl-Alt-Del, ya que en ese caso consumiría mucho tiempo de proceso en ello y por ende la capacidad de proceso se vería significativamente afectada. La solución empleada es una interrupción.
Luego cada vez que el usuario presiona una tecla, la CPU es advertida a través de una señal especial de interrupción. Cuando la CPU advierte/recibe una señal de interrupción suspende temporalmente el proceso actual almacenando en memoria RAM un bloque con toda la información necesaria para restablecer posteriormente la ejecución del programa si es que procede. Enseguida la CPU determina qué elemento ha solicitado la interrupción y para cada caso existe un bloque de instrucciones que realiza la tarea correspondiente que es ejecutada a continuación. Terminada la ejecución se restablece el programa original en el mismo punto en que fue interrumpido usando para ello la información almacenada previamente.
Cada interrupción tiene asignada un número único. El PC está diseñado de manera que la interrupción tiene asignada 4 bytes de memoria RAM. La dirección de los cuatro bytes en la memoria corresponde al número de la interrupción multiplicado por 4. Por ejemplo la interrupción IRQ 5 tiene asignada 4 bytes en la dirección 0x00014 (0000:0014). El contenido de los 4 bytes de memoria RAM asignados a una interrupción contiene a su vez una dirección que es un puntero a un bloque de instrucciones de máquina que realiza el procedimiento correspondiente. De este modo al iniciar la ejecución de una interrupción de los cuatro bytes que tiene asignados se obtiene la dirección del bloque de instrucciones que efectivamente se ejecutan. Por ejemplo si en la dirección 0000:0014 estuviera almacenado el valor 0xFFF00, ello significa que en dicha dirección (ó (F000:FF00) se encuentra el bloque de instrucciones a ejecutar cuando la interrupción IRQ 5 sea requerida.
Esta forma de direccionamiento indirecto para las interrupciones brinda la flexibilidad necesaria para perfeccionar, modificar y extender el código de instrucciones correspondiente permitiendo mantener por ejemplo la compatibilidad de las distintas versiones de BIOS con las aplicaciones y equipos que usan las interrupciones.

Existen tres tipos de interrupciones:
a) requeridas por hardware
Las interrupción original y tradicional es aquella iniciada por un periférico que demanda atención ya que ha ocurrido un evento relativo a este periférico que demanda algún procedimiento de parte de la CPU. En un PC las primeras 16 interrupciones son de este tipo por lo que los primeros 64 bytes de la memoria RAM son direcciones que apuntan bloques de instrucciones residentes en otras áreas de la memoria RAM. Cabe notar que estas 16 primeras interrupciones que son generadas por hardware que necesita atención rápida por lo que debe interrumpirse a la brevedad cualquier cosa que la CPU esté haciendo en ese momento.
Una lista de las interrupciones generadas por hardware es la siguiente

IRQ Prioridad Función
0 1 Timer
1 2 Teclado Hardware
2 Reservada
3 11 COM 2
4 12 COM 1
5 13 Tarjeta de Sonido
6 14 Controlador Floppy
7 15 Puerta Paralela
8 3 Reloj (tics)
9 4 Libre para tarjeta de red, sonido, puerta SCSI
10 5 idem
11 6 idem
12 7 PS-mouse
13 8 Co-procesador matemático
14 9 Canal IDE primario
15 10 Canal IDE secundario

b) requerida por software para interactuar con periféricos
Una característica importante de la operación de interrupciones es que ellas están jerarquizadas para resolver conflictos entre las múltiples interrupciones. Esto puede ser necesario por ejemplo mientras una interrupción está siendo ejecutada para atender un dispositivo y en en ese momento un segundo dispositivo pide una interrupción. Se debe tener un mecanismo para decidir que acción tomar. Este mecanismo está basado en la priorización de interrupciones de modo que una interrupción de mayor prioridad puede interrumpir una de menor prioridad pero no al revés. De este modo el sistema de interrupciones funciona ordenadamente lo que permite por ende un funcionamiento robusto del computador. La administración del sistema de interrupciones mediante este esquema de priorizaciones es muy eficiente de tal manera que su uso se extiende a la interacción con periféricos. De tal manera que si necesita interactuar con un periférico entonces la CPU actúa a través del sistema de interrupciones solicitandose a sí mismo una interrupción. De este modo previene que el periférico esté ocupado o bien no disponible. Por ejemplo si la CPU desea escribir un caractér en la pantalla, en vez de hacerlo directamente solicita una interrupción. La interrupción se ejecuta cuando las condiciones son las adecuadas tanto del punto de vista del periférico como de la CPU.

RE:interrupciones de lenguaje ensamblador

Publicado por Robert Bruce (1 intervención) el 19/11/2010 17:21:28
como hago una interrupcion de una tecla cualquiera como por ejemplo: F1, ESC,F5.....y que al presionarla me genere un aviso que diga :"tecla interrumpida".....y no se pueda utilizar,
Gracias,