From Wikipedia, the free encyclopedia
  (Redirected from QBASIC)
Jump to navigation Jump to search
QBasic Opening Screen.png
First appeared1991; 29 years ago (1991)
OSMS-DOS, Windows 95, Windows 98, Windows Me, PC DOS, OS/2, eComStation
LicensePart of the operating system (a variety of closed-source license)
Influenced by
FreeBASIC, QB64, SmallBasic

QBasic, a short form of Quick Beginners All purpose Symbolic Instruction Code, is an integrated development environment (IDE) and interpreter for a variety of BASIC programming languages which are based on QuickBASIC. Code entered into the IDE is compiled to an intermediate representation (IR), and this IR is immediately interpreted on demand within the IDE.[1][dead link] It can run under nearly all versions of DOS and 32-bit versions of Windows, or through emulation via DOSBox/DOSEMU on Linux, FreeBSD, and 64-bit versions of Windows.[2] (QBasic is a DOS program and requires DOS or a DOS emulator. Windows XP comes with an emulator called DOS Virtual Machine, subsequent versions of Windows require an emulator such as DosBox.) For its time, QBasic provided a state-of-the-art IDE, including a debugger with features such as on-the-fly expression evaluation and code modification. It supports various inbuilt functions.

Like QuickBASIC, but unlike earlier versions of Microsoft BASIC, QBasic is a structured programming language, supporting constructs such as subroutines.[3] Line numbers, a concept often associated with BASIC, are supported for compatibility, but are not considered good form, having been replaced by descriptive line labels.[1] QBasic has limited support for user-defined data types (structures), and several primitive types used to contain strings of text or numeric data.[4][5]


QBasic was intended as a replacement for GW-BASIC. It was based on the earlier QuickBASIC 4.5 compiler but without QuickBASIC's compiler and linker elements. Version 1.0 was shipped together with MS-DOS 5.0 and higher, as well as Windows 95, Windows NT 3.x, and Windows NT 4.0. IBM recompiled QBasic and included it in PC DOS 5.x, as well as OS/2 2.0 onwards.[6] eComStation, descended from OS/2 code, includes QBasic 1.0 . QBasic 1.1 is included with MS-DOS 6.x, and, without EDIT, in Windows 95, Windows 98 and Windows Me. Starting with Windows 2000, Microsoft no longer includes QBasic with their operating systems,[7] but can still be obtained for use on newer versions of Windows.

QBasic (as well as the built-in MS-DOS Editor) is backwards-compatible with DOS releases prior to 5.0 (down to at least DOS 3.20). However, if used on any 8088/8086 computers, or on some 80286 computers, the QBasic program may run very slowly, or perhaps not at all, due to DOS memory size limits. Until MS-DOS 7, MS-DOS Editor and Help required QBasic: the EDIT.COM and HELP.COM programs simply started QBasic in editor and help mode only, and these can also be entered by running QBASIC.EXE with the /EDITOR and /QHELP switches (i.e., command lines QBASIC /EDITOR and QBASIC /QHELP).

Advantages and Disadvantages[edit]

Some of the advantages of QBasic are:

  • QBasic is very easy-to-learn programming language.
  • QBasic is free to download and it comes pre-installed in Windows 95/98.
  • Suitable for mathematical and business applications.
  • Best for beginners to understand the programming language.
  • It checks for errors in syntax automatically.
  • It is simple and easy to debug.

And some of the disadvantages of QBasic are:

  • QBasic is not a well-structured programming language.
  • It is mostly used in education or training.
  • QBasic does not contain a compiler, and cannot generate executable programs.
  • It is not a professional language.


QBasic came complete with four pre-written example programs. These were "Nibbles", a variant of the Snake game; "Gorillas", an Artillery game; "MONEY MANAGER", a personal finance manager; and "RemLine", a Q-BASIC code line-number-removing program.[1]

Easter egg[edit]

QBasic has an Easter egg. To see it, press and hold:
Left CTRL+Left SHIFT+Left ALT and Right CTRL+Right SHIFT+Right ALT simultaneously after running QBasic at the DOS prompt but before the title screen loads: this lists The Team of programmers.[8] On fast modern computers, it is difficult to perform. It is best done on an old PC (preferably one with a working Turbo button, with the switch on to slow the CPU to 4.77 MHz) or in an emulator like Bochs or DOSBox which can be slowed. A screenprint can be seen at The Easter Egg Archive (QBasic page).

See also[edit]


  1. ^ a b c "Differences Between GW-BASIC and QBasic". 2003-05-12. Retrieved 2008-06-28.
  2. ^ "HOWTO Play With Your Old QBasic Programs on Linux". 2007-03-31. Archived from the original on 2009-11-18. Retrieved 2008-06-28.
  3. ^ "QBASIC Manual: SUB...END SUB Statement QuickSCREEN". Archived from the original on 2008-10-07. Retrieved 2008-06-28.
  4. ^ "QBASIC Manual: TYPE Statement QuickSCREEN". Archived from the original on 2017-03-24. Retrieved 2008-06-28.
  5. ^ "QBASIC Manual: Limits - Names, Strings, and Numbers". Archived from the original on 2016-03-04. Retrieved 2008-06-28.
  6. ^ "Microsoft BASIC version information". Retrieved 2008-06-12.
  7. ^ "QBasic Missing from Windows 2000". 2007-03-01. Retrieved 2008-06-12.
  8. ^ "QBasic - Developer Credits". 1999-07-23. Retrieved 2008-06-12.

External links[edit]