1.打印机:是计算机的主要硬拷贝设备。按照印字原理分为字模式、针式、喷墨式、热转印式、激光式、LED式、LCS式、荧光式、电灼式、磁式和离子式等多种。
2.打印机接口:有串行口和并行口两种。IBM PC系列机使用并行口,且打印机为Centronics型的36针插座,计算机上的并行口为D25型的插座。两者需要用专用的打印电缆连接。
3.打印字符/图形要求软件将字符/图形的输出转化为打印机的控制码,这些软件通常称为打印机驱动程序。
4.不同的打印机具有不同的控制字符,需要查阅该打印机的说明书。
一、DOS打印功能
INT 21H的功能5 (AH=5),打印一个放在(DL)寄存器中的字符。(可送一些控制字符码:如回车、换行、换页等。)
1)打印机的控制字符
标准控制字符:有空格——08H,水平TAB(横表)——09H,换行——0AH,垂直TAB(纵表)——0BH,换页——0CH,回车——0DH。(TAB功能在某些打印机中没有。)
特殊的打印命令
部分特殊打印命令:设置紧缩方式——0FH,设置扩展方式——0EH,取消紧缩方式——12H,取消扩展方式——14H。
与ESC(1BH)字符一起使用的命令:有很多,需要阅读打印机手册。
向打印机发送命令码的格式
在数据区中定义命令码;
直接用命令方式发送。
2)BIOS打印功能(INT 17H)
AH=0:打印一个由AL指定的字符。并回送状态信息到AH中。调用时需用DX指定打印机号(0、1、2号)。
AH=1:初始化由DX指定号(0、1、2号)的打印机。并回送状态信息到AH中。
AH=2:读由DX指定号(0、1、2号)的打印机的状态信息到AH中。
打印机的状态字节如上页图所示。
二、打印机初始化
mov ah,1
mov dx,打印机号(0~2)
int 17H ;返回打印机状态到ah
三、控制命令
1、标准控制命令
控制码 |
功能 |
08H |
空格 |
2、特殊的控制命令
控制码 |
功能 |
控制码 |
功能 |
0FH |
设置紧缩方式 |
1B 30H |
设置8行/时 |
命令的输出:
利用INT 21H的05号功能
例:紧缩方式打印一行字符,紧缩方式,每时8行,打印后回车,换行
head db 0FH,1AH,30H,‘This is string’,
db 0DH,0AH
len EQU $-head
…
mov cx,len
mov si,offset head
mov ah,05H
PRIN:
mov dl,[si]
int 21h
inc si
loop ?
说明:
字符打印也可用INT 17H的0号功能
mov ah,0
mov dx,打印机号
mov al,打印的字符
int 17H