Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Interrupciones

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 54

Tecnológico Nacional de México

Instituto Tecnológico de Acapulco

Arquitectura de Computadoras

Docente: Urzúa Osorio Dagoberto

1.2.5 Interrupciones en Lenguaje Ensamblador


Equipo 6

Morales García Aime Karina 15320143

Salazar Gatica Roberto 141080057

Ozuna Franco Víctor Francisco 15321146

Montalvo López Misael 13320932


Registros.
(16 bits)

Ax = Almacena
Bx = Base
Cx = Contador
Dx = Datos
Ensambladores

MASM (Microsoft Assembler)


TASM ( Turbo Assembler)
NASM (Netwide Assembler)
INTERRUPCION INT 21h

La mayoría de servicios ó funciones del sistema operativo MS-DOS se obtienen a través de la


interrupción software 21H. Es por esto que se le denomina DOS-API: DOS-APPLICATION-
PROGRAM-INTERFACE La INT 21H está compuesta por un grupo de funciones. Cuando se
accede a la INT 21H, hay que indicar el número de función que queremos ejecutar. La llamada
a la INT 21H se realizará como sigue:

- Introducimos en (AH) el número de función a la que deseamos acceder.


- En caso de que deseemos acceder a una sub-función dentro de una función, debemos indicarlo
introduciendo en (AL) el número de esa sub-función.
- Llamar a la INT 21H.

Funciones básicas: 01h ingreso de carácter.


02h desplegar carácter.
09h desplegar cadena.
INT 21H Función 01H
Entrada de Carácter con Eco (ó salida)
LLAMADA:

AH = 01H

DEVUELVE:

AL = Código ASCII del Carácter leído y Echo a pantalla


(si AH =08H) es servicio sin Echo)

EFECTO: Se lee un carácter del dispositivo de entrada estándar, y se envía al dispositivo


estándar de salida. Si al llamar a la función no había ningún carácter disponible, se esperará a
que lo haya. Normalmente el dispositivo estándar de entrada es el teclado, y el dispositivo
estándar de salida es la pantalla.
INT 21H Función 02H
Salida de Carácter
LLAMADA:
AH = 02H
DL = Código ASCII a enviar al dispositivo de salida.
DEVUELVE:
NADA.

EFECTO: Se envía el carácter depositado en el registro DL al dispositivo estándar de


salida. La salida puede ser redireccionada hacia un fichero, impresora, etc
INT 21H Función 09H
Visualización de una cadena de caracteres
LLAMADA:
AH = 09H

DS:DX = Segmento: Desplazamiento de la cadena a


DS debe apuntar al segmento donde se encuentra la cadena.
DX debe contener el desplazamiento de la cadena dentro de ese segmento.

Ejemplo: Definition of the message in Data segment

MSG DB "This is a message$" or "This...","$"


Program in Code segment
Mov AH, 09H
Mov DX, Offset MSG
Int 21 H

DEVUELVE: NADA.

EFECTO: Se envía una cadena de caracteres al dispositivo estándar de salida. Si no se ha


redireccionado la salida, la cadena se enviará a la pantalla.
INT 21H Función 00H
Terminar ejecución del Programa
LLAMADA:
AH = 00H
CS = Dirección del segmento del PSP.

DEVUELVE:
NADA

EFECTO: Se finaliza la ejecución del programa en curso. Esto conlleva:


- Liberación de toda la memoria asignada al programa.
- Todos los buffers de fichero son vaciados.
- Se cierra cualquier fichero abierto por el programa.
- Se restauran los tres vectores de interrupción (INT 22H, INT 23H, INT 24H) cuyo contenido
original fue almacenado en la pila. Esta función está pensada para programas COM, en los cuales,
el PSP está en el mismo segmento que el código del programa. En los programas EXE esto no
sucede así, estando el PSP en diferente segmento al código del programa, por tanto, no se debe
llamar a esta función desde un programa .EXE. En ambos casos (COM y EXE), es preferible
utilizar la función 4CH, ya que devuelve un código de retorno la programa padre.
INT 21H Función 4CH
Terminación de Programa con Código de Retorno
LLAMADA:
AH = 4CH
AL = Código de retorno para el programa padre

DEVUELVE:
NADA.

EFECTO: Se finaliza la ejecución del programa en curso, y se devuelve un código de retorno al


programa padre. Mediante este código de retorno, se puede ofrecer información al programa
padre acerca de la ejecución del programa (si se ha producido error, etc...) La terminación del
programa conlleva:
- Liberación de toda la memoria asignada al programa.
- Todos los buffers de fichero son vaciados.
- Se cierra cualquier fichero abierto por el programa.
- Se restauran los tres vectores de interrupción (INT 22H, INT 23H, INT 24H) cuyo contenido
original fue almacenado en la pila.
Este es el método idóneo de terminación de programas, ya que no necesita que el registro CS
tenga ningún contenido especial. Y aparte, devuelve información al programa padre.
Int 15h

Antiguamente, esta interrupción se encargaba únicamente de ofrecer acceso a las unidades


de cinta, en la actualidad, tiene un amplio rango de funciones como control del joystick,
control de APM (Advanced Power Management), establecer el modo de velocidad de la cpu,
etc...

Servicio Descripción
21 Event Wait
84 Leer Joystick
86 Delay (CX DX)
88 Tamaño mem.extend.
c0 Parámetros sistema
c1 Datos BIOS extendida
MOV AH,00h
INT 15h
JC error
;Si viene hasta aquí el motor está en marcha
error:
CMP AH,86h ;Comprobamos si AH=86h
JE no_hay_cinta
;Si viene hasta aquí hay un error
no_hay_cinta:
;Si viene hasta aquí no hay cinta dentro de la unidad
Int 16h

Esta interrupción 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).
Servicio Descripción
00 Leer carácter teclado
01 Comprobar buffer teclado
02 Obtener byte estado teclado
03 Definir velocidad teclado
05 Colocar en buffer teclado
10 Leer carácter ampliado
11 Comprobar buffer ampliado
12 Obtener byte t.ampliado
;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 función 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
int 1ah
La interrupción INT 1AH es un tipo de interrupción BIOS que se considera
como “Llamada al sistema” que se encarga de controlar el RTC (real time-
clock) (Reloj de tiempo real)  es un reloj de un ordenador, incluido en
un circuito integrado, que mantiene la hora actual. Aunque el término
normalmente se refiere a dispositivos en ordenadores personales,
servidores y sistemas embebidos(sistema de computación diseñado para realizar
una o algunas pocas funciones dedicadas), los RTC están presentes en la
mayoría de los aparatos electrónicos que necesitan guardar el tiempo
exacto.
Terminología
El término se usa para evitar la confusión con los relojes
hardware ordinarios que sólo son señales que
dirigen circuitos digitales, y no cuentan el tiempo en
unidades humanas. Los RTC no deben ser confundidos
con la computación en tiempo real (en inglés, real-time
computing), que comparte su acrónimo de tres letras,
pero que no se refiere directamente a la hora del día.

VENTAJAS
Aunque controlar el tiempo puede hacerse sin un RTC,​
usar uno tiene beneficios:
•Bajo consumo de energía (importante cuando está
funcionando con una pila)
•Libera de trabajo al sistema principal para que pueda
dedicarse a tareas más críticas.
•Algunas veces más preciso que otros métodos
 Los RT
C
alime a menudo
nt t
puede ación alte ienen una

E
n rn f
mien seguir m ativa, po uente de

C IO N
r lo q
TE D dispo
princ
tras l
ipal e
a fuent
idien
e de a
d o el t
iemp
o
ue
nible s tá apa l im en
altern . Esta gada tació
ativa fuent o n n
de lit es no e de a o está
i rm li
algun o en los si almente mentación
ENTA
FUEN

os sis stema una b


capac t e m a s an t atería
itor, p s nuevo ig uos, p
pued orque s usan ero
alime en ser  son r un sú
ntaci s oldado e c argab per
sumin ón altern s. La fue les y
ALIM

i a n
RAM strar energ tiva tambi te de
gener  dent ía a u én pu
alme r o del m n a mem ede
n te is or
de la  almacen mo RTC, ia
BIOS a q
 de la la configu ue
 placa ra
base. ción
 1Ah
--> C
ontr
tiem ola
po re dor del
al (C re

ión
1Ah MOS loj de

h
--> 0 )
0h --

in t 1 a
1Ah > Le
tiem er el
rrupc --> 0
1h -- p o reloj
> Es real  en
t
1Ah tiem ablecer
1Ah --> 0 po re el r e
--> 0 2 h --> a l loj e
3h -- Leer n
1Ah
--> 0 > Estab la hora
e inte

1 4h le c
1Ah Ah --> 0 --> Obte er la ho
-- 5 n ra
1Ah > 06h --> h --> Fija er fecha
1Ah --> 07h - Estable r fecha
--> 0 -> De c
A sact er la ala
d

1Ah h --> iv rm
--> 0
Bh -- Leer con ar la alar a
Tipos

> Es ma
table tador de
1Ah de d ce r c días
--> 8 ía s o ntado
0h -- r
> So
nido
Aplicación
Interfase
Tubería
Lectura del
flujo de entrada
Medidor de
Flujo
Procesamiento

Salida de la
válvula
Tiempo
Computadora Válvula

Un Sistema de control
de fluido simple
INT 33H

 La interrupción INT 33H es la interrupción de control del ratón. El driver del ratón
esta constantemente recibiendo información del puerto al cual conectamos el ratón.
INT 10
INT 10H Función 00H
Establecer modo de Vídeo
LLAMADA:
AH = 00H
AL = Modo de vídeo.
DEVUELVE:
NADA.

Selecciona y activa el modo de vídeo especificado.


A no ser que se utilice el truco que se indica a continuación, al llamar a esta función, se borra
la pantalla. Pero se borra el contenido de pantalla.
Por suerte hay una especie de 'truco' para evitar este borrado automático de la pantalla.
Consiste en poner con valor 1 el bit 7 del registro AL (que contiene el modo de vídeo) en la
llamada a la función.
TARJETA GRAFICA: TODAS
(MDA, CGA, EGA, MCGA, VGA...)
LLAM
ADA
AH = :
01H
n 01H
l
Bits 0

ño de
r
-
Curso 4 de CH =

Curso
r Línea
Bits 0 inicia
u n c ió

-4 de l del
tama
Curso CL =
r. Línea
DEV final
UELV del
0H F
lecer

NAD E:
A.
EFEC
INT 1
Estab

TO:
Se se
leccio
Curso n
r en m a un nuev
odo t o tam
exto. año d
e
LLA
MAD
AH = A:
02 H
BH =
Págin
DH = a de
Línea vídeo

n 0 2H
DL = d onde s
Colu ituar

rsor
DEV m na don el cu
UEL d rsor
VE: e s ituar
NAD el cu
A. rsor
EFEC
TO:5
4444
e l Cu Posic
los re
iona
el cur
44
u n c ió
gistro so
Sólo s DH r en panta
se y DL lla, d
págin desplaza e acu
a de v rá el erdo
c a las
para íd eo acti u r sor s i coord
cada va. E la pág enada
actua una d s i s indi
l e las pá to es así n a de v cadas
ginas ya qu ídeo i en
io n a r

Las c d e víd e existe n d icada


o o rd e eo m
para nadas u
0H F

con l e
la p as qu n cursor i diante BH
izqui fila empi ara la col e con ndep
e es la
er ez u tamo
colum da de la p an a parti mna empi s en e ndiente
n a r e l mod
ó la 7 a máxim ntalla tend de 0. Esto zan a part o
9 (si a es l r á l a q u iere ir d e
es la e a s 0.
24 (s stamos en 39 (si esta coordenad decir qu Las coor
P o sic

un m i esta u m as (lín e la esq denad


o do d mos e n modo os en
u n e a = u in as
d 0 a
INT 1

e víd n un m e víd m odo d ,colu super


(Un ' e o de 5 0 o do eo de ev m na ior
tr líneas de vídeo 80 colum ídeo de 4 =0). La
valor uco' para ) d n 0
es ha . e 25
colum no válido cer desap líneas as). La lín columnas
na el s para arece ) ó la ea )
valor l a c r el c 49 (s máxima
100, o l u r i e
el cur umna o la sor de la p stamo
s en
sor d fi la. Po an talla c
esapa r e o ns
recer je
de la mplo, si d iste en dar
panta amos
lla) a la
LLA
MAD
AH = A:
03H
BH =
Págin
DE V a de v
UELV ídeo.

n 03H
CH = E:

ursor
Línea
CL = inicia

a ño
Línea l del
final curso
DH = d r
Fila d e l curs
onde o r
DL = se e n
Colum cuent
n ra el

y Tam
EFEC a dond curso
TO: e se e
del C r
u n c ió

Obtie nc u entra
ne las el cur
obtie sor
ne el coordena
tama das d
ño de e
l curs l cursor en
INT 1 o r. una p
0H F ágina
unció de ví
Estab n deo d
lecer 0 5H ada. T
0H F
sición

n ueva ambi
LLA págin én se
MAD a
A : d e vídeo
AH =
05H
AL =
Págin
DE V a de v
UELV ídeo.
INT 1

NAD E :
ar po

A.
EFEC
TO:
Estab
le
mostr ce como
ándo activ
en la se al
posic por panta a nueva p
para ión q lla el ágina
Busc

cada u
modo e le corre contenido de vídeo i
de ví sp d n
deo s onda para e esa pág dicada me
on: esa p ina d diant
ágina ev ee
de ví ídeo, y sit l registro
deo.
Las p uando el c AL,
ágina u
s pos rsor
ibles
LLAM
ADA
AH = :
06H
AL =
N
la ven úmero de

n 06H
hacia exto
ta n a s l
elecc íneas a de

arriba
BH = ionad s
Atrib
u a med plazar. Si
to a u iante A
CH =
Línea sar en los re L=0, se bo
s de t dond las lín gistro rra to
CL = e comi e a s borra s C X y D da
Colu
u n c ió

mna enza das. X


DH = dond la ven
Línea e com tana d
DL = d o n de a i en z a e text
Colu caba l a v e o.
mna la ven n t a na de
línea

DEV dond tana d texto


UELV e aca e t e .
E: b xto.
0H F

NAD a la v
A. entan
a de t
EFEC exto.
TO:
l az a r
INT 1

Desp
la
la ven za hacia a
t rr
Las l ana espec iba un nú
ín if m
blanc eas despla icada med ero determ
Desp

o z ia
medi s. El color adas, que nte los re inado de l
ante e d g í
l regi utilizado e an vacías, istros CX neas en
stro B n esta re y
H. s líne llenándos DX.
as va
cías s e con
e in d
ica
LLAM
ADA
AH = :
07H
AL =
N
la ven úmero de

n 07H
hacia xto
ta n a s l
elecc íneas a de

abajo
BH = ionad s
Atrib
u a med plazar. Si
to a u iante A
CH = sar en los re L=0, se bo
e
Línea las lín gistro rra to
s de t CL = dond s
Colu e comi e a s borra C X y D da
u n c ió

mna enza das. X


DH = dond la ven
Línea e com tana d
DL = d o n de a i en z a e text
Colu caba l a v e o.
mna la ven n t a na de
línea

DEV dond tana d texto


UELV e aca e t e .
E: b xto.
0H F

NAD a la v
A. entan
a de t
exto.
EFEC
l az a r

TO:
INT 1

Desp
la
la ven za hacia a
t b
Las l ana espec ajo un nú
ín if m
blanc eas despla icada med ero determ
Desp

o z ia i
medi s. El color adas, que nte los re nado de l
ante e d g ín
l regi utilizado e an vacías, istros CX eas en
stro B n esta re y
H. s líne llenándos DX .
as va
cías s e con
e in d
ica
Leer
carác
LLAM ter y
atribu
ADA to
AH = :

n
08H

08 H
u n ció BH =
DEV
Págin
a de v
UELV ídeo.
AH = E:
Atrib
0H F

AL = uto (c
Códi olor d
g o el car
EFEC A SCII ácter
TO: del ca ).
Medi rácte
ante l r leíd
INT 1

devue a llam o.
l a
situad ve en AL da a esta
o el fu
mism en la pos código d nción, se
o ic el
carác , obtenem ión del cu carácter
ter. os en r
AH e sor. Así
l colo
r de e
ste
Escri
bir ca
LLA rácte
MAD r y at
ributo
AH = A :

n
09H

09 H
AL =
u n ció BH =
Códi
Págin
go de
l cará
cter a
BL = a d e víd escrib
Atrib eo d o ir.
u to ó c n de esc
CX = o l o ribir
0H F

Canti r que e l car


carác dad d va a t ácter.
ter, u e v e c e n e r el c
no a
DEV conti es que se aráct
er.
UELV nuaci debe
NAD E: ó n de e scrib
A. ot ro . ir el
INT 1

EFEC
TO:
Se es
cr
curso ibe un ca
r, rá
carác en la pág cter en la
t er t e i
ndrá na de víd posición a
e l co l e c
or ind o deseada tual del
i cad o .E
medi l
ante
BL.
Escri
bir un
LLAM punto
ADA o pix
: e l g rá
AH = fico
0CH
AL =

n 0 CH
Valor
BH = del co
Págin lor a
a de v usar.
CX = ídeo
Colu dond
(coor mna e esc
denad dond ribir
a gr e esc el car
CX = á r ibir e
unció
fica x l pixe ácter.
Fila d )
gráfic onde l
a y) escrib
DEV ir el p
UELV ixel (
E coord
NAD : enada
A.
0H F

EFEC
TO:
Da un
válid nuevo col
a sólo or a u
INT 1

para n
modo pixel grá
s gráf fi
icos. co. Funció
n
LLA
MAD
AH = A:
0D H
BH =

H
Págin

el
a de v

o
n 0D CX = ídeo.
C
n pix
(coor olumna d

gráfic
denad el pix
DX = a g ráfica el que n
Fila d x). os int
u n ci ó

gráfic e eresa
a y). l pixel qu
r de u

DEV e nos
UELV intere
E s a ( co
AL = : orden
Valor ada
0H F

EFEC del col


l colo

TO: or de
l pixe
Obtie l.
ne el
panta c
lla. E olor de un
INT 1

coord st p
enada e punto se unto gráf
ner e

válid i
a sólo s gráficas referencia co de la
p a ra (x rá
modo ,y): (CX, mediant
s gráf D e
icos. X). Funci las
Obte

ón
INT 10H Función 0FH
Obtener el Modo de vídeo actual
LLAMADA:
AH = 0FH
DEVUELVE:
AL = Modo de vídeo actual.
AH = Cantidad de caracteres que caben en una línea en el modo de vídeo
actual.
BH = Número de la página activa.
EFECTO:
Mediante esta función podemos saber en todo momento, en qué modo de
vídeo estamos trabajando. La utilidad de esta función reside sobre todo
en la construcción de programas residentes.
 Los sis
llama temas ope
n r
disqu a esta int ativos de
e er m
interr te. Las ap rupción p odo real c
u lic a o
interr pción int 2 aciones d ra operaci mo MS-D
upció 1 e o O
n INT h para ac MS-DOS nes de dis S

3H
ceso c
13h. al dis llaman a o y de
 Los nu co en
v ez
la
Wind evos siste de l a
o m
INT 1 2003 ws NT y s as operat
) u iv
se la o linux int s derivado os como M
pa e s
disqu san a sus rceptan la (ej. NT 4 icrosoft
e m l .0
cuand te. Windo ecanismo lamada a , XP y se
o util w s es rv
izan e s 9x y Wi nativos d ta interru er
l mod nd e pc
o de ows 3.x t acceso al ión y
 La ruti acces a
o a ar mbién ha isco o
d
n
504 M a origina chivo cen e
s s
utiliz B o má l de la d e 32 bi to
a s gra interr ts.
se cre el modo d ndes hast upción so
a e a po
modo ron las ex acceso C un límite rta discos
L te H d
sopor BA (dire nsiones d S, para ro e 8 GiB p de
ta c e m o
usar m ndo así h ciones de la INT 13 per esta b r que
as 6 h a
o 128 odos LBA ta 8 ZiB 4-bits) par que utiliz rrera,
P iB r d de a a
espec e 32-bits espacio ( acceder a n el
tivam ó T l
ente) 48-bits q ambién se disco,
. ue so
porta puede
n2T
iB
Tabla de Unidades
Tabla de Estado
TOD
OS: P
para u
disco ede ser u
d tiliza

e
HD: u r o d

cios
y isque o
d
Solo d
c c ió n por e pued te
l disc e ser
Servi o d u utiliz
FD: S ro ado
olo p
por e u
l disq ede ser u
Tradu

u et e tiliza
PS/2: do
So l o
d e eq para
uipos disco
EXT: P S/ 2 s duros
Exten
13h sione
s de l
a INT
Servicios
INT 13 h AH=00h – Reiniciar
controlador de Disco
AH 00h

DL Unidad (ej: 80 h – Primer Disco Duro.)

Ejemplo:
MOV AH,00h
MOV DL,00h ;Primera disquetera
INT 13h
INT 13h AH=02h - Leer sectores
Parámetros
AH = 02 h Leer Sectores

AL = ?? Número de Sectores a leer(tiene que ser mayor que


0)

CH = ?? 8 bits bajos del número de cilindro.

CL = ?? Número de sector(bits 0-5), 2 bits altos de número


De cilindro (bits 6-7, solo disco duro.)
DH = ?? Número de Cabeza

DL = ?? Número de Unidad

ES. BX Buffer de Datos


Retorna
CF Activada en error , limpia si no hay error
AH = ?? Estado
AL = ?? Número de Sectores Transferidos

Ejemplo:

MOV AH,02h
MOV AL,10 ;10 sectores a leer
MOV CH,02 ;Cilindro 2
MOV CL,01 ;Empezamos desde el primer sector
MOV DH,01 ;Cabeza 1
MOV DL,00h ;Primera disquetera
MOV BX,0800h ;ES:BX - 0000:0800
INT 13h
JMP 0000h:0800h ;Saltamos a la dirección que acaba de leer
AH = 41h Verificar sectores
AL = ?? Número de sectores a

-
es
verificar (tiene que ser
=04h mayor de 0)

ector
CH = ?? 8 bits bajos del número
del cilindro
CL = ?? Número de sector (Bits
3h AH

0-5), 2 bits altos del


ica r s
número del cilindro
(Sólo disco duro)
DH = ?? Número de cabeza
DL = ?? Número de unidad
Verif
INT 1

ES:BX Buffer de datos


Retorna
CF Activada en error, limpia
si no hay error
AH = ?? Estado
AL = ?? Número de sectores
transferidos

Ejemplo:

MOV AH,02h
MOV AL,10 ;10 sectores a leer
MOV CH,02 ;Cilindro 2
MOV CL,01 ;Empezamos desde el primer sector
MOV DH,01 ;Cabeza 1
MOV DL,00h ;Primera disquetera
MOV BX,0800h ;ES:BX - 0000:0800
INT 13h
JMP 0000h:0800h ;Saltamos a la dirección que acaba de leer
INT 13h AH=04h - Verificar sectores
AH = 41h Verificar sectores
AL = ?? Número de sectores a verificar (tiene que ser
mayor de 0)
CH = ?? 8 bits bajos del número del cilindro
CL = ?? Número de sector (Bits 0-5), 2 bits altos del
número del cilindro (Sólo disco duro)
DH = ?? Número de cabeza
DL = ?? Número de unidad
ES:BX Buffer de datos
Retorna
CF Activada en error, limpia si no hay error
AH = ?? Estado
AL = ?? Número de sectores verificados
Ejemplo:

MOV AH,04h
MOV AL,18 ;18 sectores ha comprobar
MOV CH,3 ;Cilindro 3
MOV CL,1 ;Sector 1
MOV DH,00 ;Cabeza 0
MOV DL,00 ;Primera disquetera
MOV BX,00 ;Ponemos el buffer en 0000:0800
MOV ES,BX
MOV BX,0800h
INT 13h
JC sector_malo_o_error
;Si viene aquí los sectores están bien
sector_malo_o_error:
;Si viene aquí hay un sector dañado o ha habido otro tipo de error
INT 13h AH=41h - Comprobar si las
extensiones están instaladas
AH = 41h Comprobar extensiones
BX = 55AAh Comprobar extensiones
DL = ?? Número de unidad
CF Activada en error (no hay extensiones), limpia si no hay error
AH = ?? Número de la versión mayor de las extensiones (01h = 1.x, 20h = 2.0 /
EDD-1.0, 21h = 2.1 / EDD-1.1, 30h = EDD-3.0)
AL = ?? Uso Interno
BX = 55AAh Devuelve 55AAh si están instaladas
CX = ?? Lista de bits de las extensiones instaladas (Bit 0-15)
DH = ?? Versión de las extensiones (v2.0+ ??? -- no presente en 1.x)
Ejemplo:

MOV AH,41h
MOV BX,55AAh
MOV DL,80h ;Primer disco duro
INT 13h
JC no_hay_extensiones
;Si viene aquí las extensiones están instaladas
no_hay_extensiones:
;Si viene aquí las extensiones no están instaladas
Código ASCII
https://www.youtube.com/watch?v=vFnEN4s-
zEw

http://ict.udlap.mx/people/oleg/docencia/Asse

s
mbler/asm_interrup_10.html

encia
https://es.wikipedia.org/wiki/Int_13h

https://es.wikipedia.org/wiki/Int_15h
Refer
https://es.wikipedia.org/wiki/Int_16h

https://www.lawebdelprogramador.com/foros/E
nsamblador/12815-interrupciones-de-lenguaje-
ensamblador.html

También podría gustarte