正在加载图片...
实验三数/模、模/数转换实验 无82班王一舟981070 CODE SEGMENT ASSUME CS: CODE. DS DATA. SS SSEG BEGIN PROC FAR MOVAHIH 有键输入 PUSH DS INT 16H MOVAX O JZ WAIT IN PUSHAX EXIT DOS 退出 MOVAX DATA CALL RESET MOV DS.AX RET CLI BEGIN ENDP CALL I8259 8259初始化 CALL RDOA 读旧向量 以下是中断服务程序执行ADDA转换功 CALL WROA 写新向量 能 MOV DX OFFSET MESG3 SERVICE PROC FAR MOV AH. O9H PUSH DS INT2IH PUSH AX ;保护现场 开中断 MOV DX. 230H 从230端口读 MOV DX. 230H IN AL, DX 模拟量 MOVAL. O ;送初值 MOV DX228H 将转换结果送 OUT DXAL 激活AD 228229端口 WAIT IN MOV DX. 229H OUT DXAL MOV AX. 350AH MOV DX. 230H 重新送新值给 INT2IH MOV AL,O ;230端口,等待 MOV WORD PTR OLDOA BX OUT DX. AL 下一次的输入 MOV WORD PTR OLDOA+2.ES QUIT RET MOV AL, 20H 送EOC中断 RDOA ENDP OUT 20H.AL ;结東命令 POPAX WROA PROC POP DS PUSH DS IRET MOV DX OFFSET SERVICE SERVICE ENDP MOVAX SEG SERVICE MOV DS.AX 18259 PROC MOVAX. 250AH IN AL, 21H INT2IH AND AL, 11111011B POP DS DUT2IH.AL RET WROA ENDP AND AL, 11111101B OUTOAIHAL RESET PROC RET PUSH DS 18259 ENDP MOV DX WORD PTR OLDOA MOV DS. WORD PTR OLDOA+2 RDOA PROC MOV AX. 250AH 2实验三 数/模、模/数转换实验 无 82 班 王一舟 981070 2 CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:SSEG BEGIN PROC FAR PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX CLI CALL I8259 ;8259 初始化 CALL RD0A ;读旧向量 CALL WR0A ;写新向量 MOV DX,OFFSET MESG3 MOV AH,09H INT 21H STI ;开中断 MOV DX,230H MOV AL,0 ;送初值 OUT DX,AL ;激活 AD WAIT_IN: MOV AH,1H ;有键输入 INT 16H JZ WAIT_IN EXIT_DOS: ;退出 CALL RESET RET BEGIN ENDP ;------------------------------------------------------- ;以下是中断服务程序,执行 AD DA 转换功 能 SERVICE PROC FAR PUSH DS PUSH AX ;保护现场 MOV DX,230H ;从 230 端口读 IN AL,DX ;模拟量 MOV DX,228H ;将转换结果送 OUT DX,AL ;228 229 端口 MOV DX,229H OUT DX,AL MOV DX,230H ;重新送新值给 MOV AL,0 ;230 端口,等待 OUT DX,AL ;下一次的输入 QUIT: MOV AL,20H ;送 EOC 中断 OUT 20H,AL ;结束命令 POP AX POP DS IRET SERVICE ENDP ;------------------------------------------------------- I8259 PROC IN AL,21H AND AL,11111011B OUT 21H,AL IN AL,0A1H AND AL,11111101B OUT 0A1H,AL RET I8259 ENDP ;------------------------------------------------------- RD0A PROC MOV AX,350AH INT 21H MOV WORD PTR OLD0A,BX MOV WORD PTR OLD0A+2,ES RET RD0A ENDP ;------------------------------------------------------ WR0A PROC PUSH DS MOV DX,OFFSET SERVICE MOV AX,SEG SERVICE MOV DS,AX MOV AX,250AH INT 21H POP DS RET WR0A ENDP ;------------------------------------------------------- RESET PROC PUSH DS MOV DX,WORD PTR OLD0A MOV DS,WORD PTR OLD0A+2 MOV AX,250AH
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有