-
, , - . . , , . , , ?
, , , , , . , . . , . . , , . , Intel, , . , . ? , , , . . , . , . , MS DOS .
, , IBM (Interrupts).
. , , . .
|
|
, . , , . . , .
IBM PC- (Hardware interrupts) (Software interrupts). , .. , , , .
ROM BIOS . , . , , . . - (, ), . , , , ( ).
, . (4 ) , . , 0 3 0, 4 7 1 ..
IBM PC- . , Chipset.
PC XT ISA 8 . PC AT 80286 , .
8 . IRQ (Intemipt - Requests). , , 1RQ 2 ( 5.18).
. IRQ 0. , , IRQ 8IRQ 15 IRQ 2, IRQ3. IRQ , ROM BIOS. IRQ IIRQ 7 8 OFH, IRQ 8IRQ 15 70 77.
|
|
, , . , , IRQ 13 , . IBM PC- IRQ 3, IRQ 5, IRQ 7, IRQ 10, IRQ11 IRQ 12. . 5.15
, , .
. 1 Intel
1 , INTR NMI. , , . INTR (INTerrupt Request) , , , , .. NI (NonMaskable Interrupt) . , , , . , , .
. .
, . , . ;
int xx . , , IOS, .
. , Intel . . . , . , , , , .
, .
, :
:
o INTR . 8259;
o INTA . INTA 8259;
o NMI ,
|
|
8259. . ;
: , , ..
:
. , , ,
f1ags\ef1ags:
o IF (Interrupt Flag) . () , INTR. IF . IF=1, , IF=0, INTR;
o F (Trace Flag) . F . 1, ;
: int,into,iret,c1i,sti.
, Intel . . 15.1, (), i8259A. , . , i8259A. 15.
, i8259A. , :
, INTR ;
;
;
() .
. 15.2 i8259A.
i8259A:
d0...d7 i8259A, . ;
INT , INTR;
INTA , ;
irq0...irq7 .
, . , i8259A :
, ;
|
|
, .
(. . 15.2):
IRR (Interrupt Request Register) , i8259A irq0irq7. ;
IMR (Interrupt Mask Register) , , () irq0rqr7. () IMR. 21 h;
ISR (Interrupt Service Register) , , ;
PR (Priority Resolver) irg0irq7;
. d0d7, ( 15 2)
( 15 2)
, irq0 , IRR. IMR, , ( ) ( ). 21h. , 0 IMR , 0 . . , - . i rq_0, . , , int. INTR. , i8259A . , . . , INTR :
1 IF. , , , .
, IF .
,
3.1 IF ;
3.2 INTA. i8259A.
, i8259A IN. , :
IRR, irq_0
1 0 ISR, 0 .
, i8259A d0d7. d0...d7 , .
, , . . , IRR, , , , , .
|
|
. . ISR, . , , - . , , 20h 20h. i8259A, . , INTA ( , ). , , .
, . , , , , . , , , ISR. , , , , .
, IF , . . , , , , , , i8259A. , . , , IF . . IF , .
sti
, IF, . , , . ? , , . CMOS- (Complementar Metal Oxide Semiconductor -). ( , ). CMOS- , . , CMOS- . , CMOS- , , . IOS. , , , , 18,2 , , irq0 i8259A. IOS . , , , sti.
i8259A
Intel , . , , , , i8088/8086, , , , i8259A, .
:
FNM (Fully Nested Mode) . () irq0...irq7 , irq0 , irq7 . ( , , IF=1).
ARM (Automatic Rotation Mode) . , , : . , . .
SRM (Specific Rotation Mode) . ARM. SRM .
(Polling Mode) . . , i8259A I RR, , . . . , , , , (, , ) .
- 8- 20h 21h. .
ICW (Initialization Control Word) ICW1ICW4. (4) (. )
W (Operation Control Word) . , OCW1...OCW3.
-. - , , .
IOS 10, DOS 21. IOS DOS IOS.
10 IOS. 16 ( ).
1 - =2 (, ) DH, DL ^.
2 ' =6 H=0, =7 H=0. 3. , , : ͻ8. ( ). AL, ( : , , , , , . .).
(, , , , . .): =0. AL.
:=9. :
AL ;
Q BL ;
;
( ).
: = =9 BL=0. AL, . 5.
: AH=FH. : AL ; ; .
: =13 AL=0. :
a ES: ( );
;
DX ;
.
21 DOS
: =2 =6 DL<>FFH. DL ASCII- . ( ѻ):
mov . 6
mov DL. 43H: 43 - ASCII ѻ
int 21H
: =9 ( ). DS: DX , $. ( ' $'):
Text db ' $' mov , 9
mov DX. offset text; offset text - : int 21H
: =40. -:
0 ;
Q 1 ;
{Direct Memory Access, DMA} . ( DMA), . , (, -).
. , , , DMA , (), , (. 5.19). , DMA, .
IBM PC/XT 4- DMA i8237, 0 . 2 3 , . DMA 1.
IBM /- 7 . , i8237, , ( DMA 4) DMA ΗDMA 3.
DMA DMA 2 . DMA 1 DMA 2 .
DMA , , , DMA I . .
/
PC (, ) . CPU /. / , ., / PC. / ( ), 2F8h, 370h. : , . "h" (hex) ,
IBM- PC () 65536 (216) / ( , , ). / , /. / IBM PC- 03FFh , FFFFh (, WT- (. 14) 620hE23h). , , EGA/VGA, , , .
, /. . , , , : , , /, , /.
, . / , , / (Base Adress In/Out).
/ ( ). ( ) . , LPT . , / /.
IOS / PC (. 5.16).
, LPT1 378h 37Eh, /. - . LPT1 , 5 378h37Ch. 200h207h , 200h 207h. .
, , . , , .
/ ( ), (, (Start), (Setting), (Control Panel), (System) Windows 95/98) CMOS Setup.
:
1. , , IBM
2. ?
3. ?
4. i8259A ?