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符。