一种打印机软开关的设计 欧阳波 1993-01-15 在PC系列计算机的DOS操作系统中,有一个BIOS数据通讯区,其中有LPT1和LPT2的基地址地址值分别为040:08-040:09和040:0A-040:0B,该地址中含有LPT1和LPT2的通讯端口,一般为0378H和0278H,通过改变打印机LPT1和LPT2基址中通讯端口值,就可以进行联机或脱机,从而有效地控制打印机。大多数情况下,一台计算机连接一台打印机即LPT1。在C盘上用DEBUG建立一个KGCOM程序如下: C>DEBUG -A100 XXXX:0100 push ds XXXX:0101 mov ax,0040 XXXX:0104 mov ds,ax XXXX:0106 mov al,〔8〕 XXXX:0109 mov ah,〔9〕 XXXX:010d mov 〔8〕,ah XXXX:0111 mov 〔9〕,al XXXX:0114 pop ds XXXX:0115 int 20 XXXX:0117 -rcx 0000:17-nkgcom -w writing 0017 bytes -q 当第一次运行时,LPT1的端口值变为7803H,从而切断了主机与打印机的通讯(即脱机);第二次运行时,LPT1的端口值恢复为0378H,这样主机与打印机联机。所以运行该程序可使打印机联机或脱机。