9.3.2 打印机的控制字符
9.3.2.1标准控制字符
打印机的标准控制字符如表9.12。
水平Tab(09H)仅当打印机有此功能,并被置成打印机Tab状态时才能实现,否则打印机不执行此命令,或用打印多个空格来代替Tab。
换行命令使打印机向前空走一行,若连续用两次换行命令,则会空出两行。
当打印机加电启动后,打印头在一页纸的顶部位置。打印机打印时,记下所打印的行数,并检查是否到了一页的最大行数(如55行/页),如打印了最后一行,就执行一个换页命令(0CH),然后再把行计数器置成0。
一般显示器遇到显示文件中的Tab字符(09),就把当前的光标位置移到8,16,24,…等字符位置上。但许多打印机并不认识Tab字符,若要打印一个ASCII码文件(如汇编源程序),就必须检验送到打印机的每个字符,若该字符是Tab,就要插入空格,使下一个字符的位置在8,16…等。形成Tab终止位置的方法由下面三个例子来说明。
当前打印位置
|
1
|
9
|
21
|
二
进 制 数
|
00000001
|
00001001
|
00010101
|
清最右边三位
|
00000000
|
00001000
|
00010000
|
加
8
|
00001000
|
00010000
|
00011000
|
新Tab终止位置
|
8
|
16
|
24
|
例9.21
编写一个能打印ASCII文件的子程序(PRTASC),它的基本功能是把已读到输入缓冲区(file-buffer)中的字符送到一个打印区(prt_buffer),并检查行尾、文件尾,处理换行符和Tab符。
|