+ -
当前位置:首页 → 问答吧 → 简单汇编,看不懂,求解释。。。谢谢!

简单汇编,看不懂,求解释。。。谢谢!

时间:2010-12-15

来源:互联网

TITLE ZY2TJ.ASM
UCODE SEGMENT
  ASSUME CS:UCODE
BEGIN:
  JMP BEGIN_
  INT_SEG DW ?
  INT_OFF DW ?

BEGIN_:
  CLI
  MOV AH,35H
  MOV AL,0EH ;保存原来的IRQ6的地址
  INT 21H
  MOV INT_OFF,BX
  MOV INT_SEG,ES
 
  MOV AX,CS
  MOV DS,AX
  MOV AH,25H
  MOV AL,0EH
  MOV DX,OFFSET UINTR
  INT 21H
   
  IN AL,21H
  AND AL,0BFH
  MOV DX,21H
  OUT DX,AL
  STI
   
  JMP $
   
UINTR PROC FAR
  CLI
  MOV DX,88H
  MOV AL,'R'
  OUT DX,AL
  MOV AL,20H
  OUT 20H,AL
  IRET
UINTR ENDP
UCODE ENDS
  END BEGIN

作者: zhangcong002   发布时间: 2010-12-15

这个段代码是修改中断的处理过程,mov ah,35h读取原来的中断向量,mov ah,25h是设置新的中断向量,所以这里新的中断处理过程是UINTR,把原来的替换掉了,当中断发生时就会调用UINTR过程去处理。刚学的,理解得也不是很清楚。

作者: Jekhn   发布时间: 2010-12-15