不知你的机器有没有出过这个故障,反正我是常常遇到。
  一日,因故离开电脑,走得很急,没有采取任何措施。半小时后回来,发现机器已进入节能状态。晃动鼠标,机器恢复了工作,而显示器迟迟不上电。我只好在一片漆黑中,使用键盘执行了“重新启动计算机”(幸好我平时背了几个快捷键,否则真是完了)。
  后来我发现,只要调用10号中断,就能强迫显示器加电。于是用C不++写了这个程序:
#include <dos.h>

void main(void)
{
    union REGS regs;

    regs.x.ax=0x4f10;
    regs.h.bl=1;
    regs.h.bh=0;
    int86(0x10,&regs,&regs);
}
  程序很简单,编译后有6628字节,很小,但很有用。我十分满意。
  后来,为了能让Basic爱好者也用上这个程序,我用Basic又写了一遍。有的人认为Basic中没有bl和bh,其实bl和bh就是bx的低八位和高八位。代码如下:
'$INCLUDE: 'qbx.bi'

DIM regs AS regtype

regs.ax = &H4F10
bl% = 1
bh% = 0
regs.bx = bl% + bh% * &H100 '填充bx的高低位
interrupt &H10, regs, regs
  编译后有11242字节,没C的好,不过也不错了。
  还有更好的吗?有!请看代码:
B8 10 4F BB 01 00 CD 10 C3 
  这是什么语言,用什么编译器编译?用这一期的第一篇文章介绍的东西,编译成一个扩展名为.com的文件。运行一下,效果完全相同,但只有9字节。发达了!