⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 中断控制8259的应用.txt

📁 上课老师给的8086仿真器
💻 TXT
字号:
CODE SEGMENT
ASSUME CS:CODE
INTPORT1 EQU 0060H
INTPORT2 EQU 0061H
INTQ3	 EQU INTREEUP3
INTQ7	 EQU INTREEUP7
	ORG 11A0H
START:	CLD
	CALL WBUF1
	CALL WRINTVER		     ;WRITE INTRRUPT
	MOV AL,13H
	MOV DX,INTPORT1
	OUT DX,AL
	MOV AL,08H
	MOV DX,INTPORT2
	OUT DX,AL
	MOV AL,09H
	OUT DX,AL
	MOV AL,0F7H
	OUT DX,AL
	MOV BYTE PTR DS:[0701H],01H	;TIME=1
	STI
WATING: CALL DISP		     ;DISP 8259-1
	JMP WATING
WRINTVER:MOV AX,0H
	 MOV ES,AX
	 MOV DI,002CH
	 LEA AX,INTQ3
	 STOSW
	 MOV AX,0000h
	 STOSW
	 MOV DI,003CH
	 LEA AX,INTQ7
	 STOSW
	 MOV AX,0000h
	 STOSW
	 RET
INTREEUP3:CLI
	  MOV AL,DS:[0701H]
	  CALL CONVERS
	  MOV BX,077BH
	  MOV AL,10H
	  MOV CX,05H
INTRE0:   MOV BYTE PTR DS:[BX],AL
	  INC BX
	  LOOP INTRE0
	  MOV AL,20H
	  MOV DX,INTPORT1
	  OUT DX,AL
	  ADD BYTE PTR DS:[0701H],01H
	  CMP BYTE PTR DS:[0701H],06H
	  JNA INTRE2
	  MOV DS:[077AH],191AH
	  MOV DS:[077CH],1819H
	  mov DS:[077Eh],1010H
INTRE1:   CALL DISP
	  JMP INTRE1
CONVERS: AND AL,0FH
	 MOV BX,077AH
	 MOV DS:[BX],AL
	 INC BX
	 RET
INTRE2:   MOV AL,20H
	  MOV DX,INTPORT1
	  OUT DX,AL
	  STI
	  IRET
INTREEUP7: CLI
	   MOV AL,20H
	   MOV DX,INTPORT1
	   OUT DX,AL
	   MOV DS:[077AH],1C1CH
	   MOV DS:[077CH],101BH
	   mov DS:[077Eh],1010H
INTRE3:    CALL DISP
	   JMP INTRE3
disp:	  mov dx,077Fh
	  mov ah,20h
disp0:	  mov cx,00ffh
	  mov bx,dx
	  mov bl,ds:[bx]
	  mov bh,0h
	  push dx
	  mov dx,0ff22h
	  mov al,cs:[bx+127bh]
	  OUT DX,AL
	  mov dx,0ff21h
	  mov al,ah
	  OUT DX,AL
disp1:	  loop disp1
	  pop dx
	  dec dx
	  shr ah,01h
	  jnz disp0
	  mov dx,0ff22h
	  mov al,0FFH
	  OUT DX,AL
	  ret
data1:	  db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h
	  db 80h,90h,88h,83h,0c6h,0a1h,86h,8eh
	  db 0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh
	  db 90h,0a3h,0a1h,86h,8fh
WBUF1:	MOV BX,0
	MOV WORD PTR DS:[BX+077AH],1701H
	ADD BX,2
	MOV WORD PTR DS:[BX+077AH],0509H
	ADD BX,2
	MOV WORD PTR DS:[BX+077AH],0802H
	RET
CODE ENDS
END  START

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -