QBasic与Quick BASIC是一回事吗?

Author: 山东矿业学院数学软件系韩莹洁 Date: 1994-11-04

        众所周知,在Quick BASIC推出四年之后,Microsoft公司推出的MS_DOS5.0又获得了巨大成功。细心的用户不难发现,QBasic只是安装在MS_DOS5.0中的一个小小的解释器,QBasic.exe文件仅占194K,它具有与Quick BASIC相似的直观清晰的用户界面,具有Quick BASIC编辑解释器的雏形和简单的运行调试功能,仿佛是一个简易的,小型的Quick BASIC。
        现在将QBasic和Quick BASIC菜单提供的功能列表比较如下:
        由以上对比可以看出:
        QBasic虽然具备最基本的Quick BASIC的功能,体现了Quick BASIC的部分特色,但Quick BASIC的真正精华和奥妙却蕴含在那似乎不起眼的其余100K的软件中(QB.exe为279K)。
        QBasic已经具有初级智能化的灵巧编辑器,用户可以用来编辑简单的程序;具有基本的视察工具,实现了子程序和主程序的切换和多窗口技术;也具备一定的运行调试工具,如单步跟踪,设置断点等。至于编辑,多模块操作,库的管理和使用等复杂而具实用价值的功能却只能到Quick BASIC中寻求了。
        Quick BASIC除具有QBasic的全部功能外,还能:
        (1)可实现文件拼接,多模块程序的建立及对多模块程序的分模块操作;
        (2)具有高度 智能化的灵巧编辑器,可记忆用户最近一次修改前的编辑,为用户增加了一层保护;
        (3)可以设置包含文件及操作,可方便地实现多模块程序的优化处理;
        (4)可与DOS对话,完成编译,库操作等功能;
        (5)增设监视点功能和历程跟踪等调试手段;
        (6)可查询当前调用的模块;
        (7)设置了完整、简易两种菜单,以满足不同水平用户的需要。
        通过分析,我们看到,将QBasic装入MS_DOS5.0及其以后的操作系统中,可能是Microsoft公司的一项精心设计。因为随着这些操作系统的流行,QBasic随之走进千家万户。等用户慢慢习惯了这样一套以QBasic为样板的具有Microsoft典型色彩的用户界面,且被它的方便简洁可吸引时,想要完成有实用意义的工作,只有慷慨解襄,再去购买该公司的其他产品(如Quick BASIC,Microsoft c…等)。一种产品的推广,就为其他产品占据更广阔的市场铺平了道路。
        ┏━━━┯━━━━━━━━━━━┯━━━━━━━━┳━━━━┯━━━━━━━━━━━━━┯━━━━━━━━━━━┓
        ┃ │QBasic │Quick BASIC   ┃     │QBasic │Quick BASIC ┃
        ┠───┼───────────┼────────╂────┼─────────────┼───────────┨
        ┃ │New │New Program   ┃     │Start │Start ┃
        ┃ │Open │Open Program   ┃     │Restart │Restart ┃
        ┃ │Save │Save   ┃     │Continue │Continue ┃
        ┃ │Save AS │Save AS   ┃     ├─────────────┼───────────┨
        ┃ │Print │Print   ┃Run     │QBasic不含编辑器 │Modify Command $ ┃
        ┃File │Exit │Exit   ┃     │,不能生成.EXE文 │Make Exe fileMake ┃
        ┃ ├───────────┼────────┨     │件,更不能建库, │Library ┃
        ┃ │QBasic不能做多模块的链│Merge   ┃     │失掉了QB最大的特 │Set Main Module ┃
        ┃ │接及调用,不能装入多个│Create Files   ┃     │点和最用的功能 │ ┃
        ┃ │模块。也不能从QBasic到│Load File   ┠────┼─────────────┼───────────┨
        ┃ │DOS间来回跳动。 │Unload File   ┃     │Step │ ┃
        ┃ │ │DOS Shell   ┃     │procedure Step │ ┃
        ┠───┼───────────┼────────┨     │Trace On │Trace ON ┃
        ┃ │Cut │Cut   ┃     │Toggle Breakpoint │Toggle Breakpoint ┃
        ┃ │Copy │Copy   ┃     │Clear All Breakpoints │Clear All Breakpoints ┃
        ┃ │Paste │Paste   ┃     │Set Next Statement │Set Next Statement ┃
        ┃ │Clear │Clear   ┃     ├─────────────┼───────────┨
        ┃Edit │New Sub │New Sub   ┃Debug   │ │Add Watch ┃
        ┃ │New Function │New Function   ┃     │ │Instant Watch ┃
        ┃ ├───────────┼────────┨     │在调试功能方面,QBasic │Delete Watch ┃
        ┃ │QBasic没有最近记忆功能│Undo   ┃     │不次于其他语言,但与QB相 │Watch Point ┃
        ┠───┼───────────┼────────┨     │比,则望尘莫及 │Delete All Watch ┃
        ┃ │Subs │Subs   ┃     │ │History On ┃
        ┃ │Split │Split   ┃     │ │Break On Errors ┃
        ┃ │Output Screen │Output Sereen   ┠────┼─────────────┼───────────┨
        ┃ ├───────────┼────────┨Calls   │未设 │设置 ┃
        ┃View │QBasic不含INCLUDED文件│Next Sub   ┠────┼─────────────┼───────────┨
        ┃ │ │Next Statement  ┃     │Display │Display ┃
        ┃ │ │Included File   ┃     │Help Path │Set Path ┃
        ┃ │ │Included Lines  ┃     │Syntax Cheching │Syntax Checking ┃
        ┠───┼───────────┼────────┨     ├─────────────┼───────────┨
        ┃ │Find │Find   ┃     │ │ ┃
        ┃ │Repeat Last Find │Repeat Last Find┃Options │QB已设置鼠标接口; │ ┃
        ┃Search│Change │Change   ┃     │QBasic则无; │Right Mouse ┃
        ┃ ├───────────┼────────┨     │QB有二种菜单,QBasic只有一│Full Menus ┃
        ┃ │QBasic不能选择文本文件│Selected Text   ┃     │种。 │ ┃
        ┃ │和标号 │Lable   ┃     │ │ ┃
        ┗━━━┷━━━━━━━━━━━┷━━━━━━━━┻━━━━┷━━━━━━━━━━━━━┷━━━━━━━━━━━┛