Microsoft QuickBASIC (también QB ) es un entorno de desarrollo integrado (o IDE) y compilador para el lenguaje de programación BASIC desarrollado por Microsoft . QuickBASIC se ejecuta principalmente en DOS , aunque también hubo una versión de corta duración para el clásico Mac OS . Se basa libremente en GW-BASIC , pero agrega tipos definidos por el usuario, estructuras de programación mejoradas, mejores gráficos y soporte de disco y un compilador además del intérprete . Microsoft comercializó QuickBASIC como el nivel introductorio para su sistema de desarrollo profesional BASIC. [1] Microsoft comercializó otros dos IDE similares para C y Pascal, a saber, QuickC y QuickPascal .
Microsoft lanzó la primera versión de QuickBASIC el 18 de agosto de 1985 en un único disquete de 5,25 pulgadas y 360 KB . La versión 2.0 de QuickBASIC y las posteriores contenían un entorno de desarrollo integrado (IDE), que permitía a los usuarios editar directamente en su editor de texto en pantalla.
Aunque todavía se admitían en QuickBASIC, los números de línea se volvieron opcionales. Los saltos de programa también funcionaban con etiquetas con nombre. Las versiones posteriores también añadieron estructuras de control, como sentencias condicionales multilínea y bloques de bucle.
El "compilador PC BASIC" de Microsoft se incluyó para compilar programas en ejecutables DOS. A partir de la versión 4.0, el editor incluyó un intérprete que permitía al programador ejecutar el programa sin salir del editor. El intérprete se utilizaba para depurar un programa antes de crear un archivo ejecutable. Desafortunadamente, existían algunas diferencias sutiles entre el intérprete y el compilador, lo que significaba que los programas grandes que se ejecutaban correctamente en el intérprete podían fallar después de la compilación, o no compilarse en absoluto debido a las diferencias en las rutinas de gestión de memoria. [2]
La última versión de QuickBASIC fue la versión 4.5 (1988), aunque el desarrollo del Microsoft BASIC Professional Development System (PDS) continuó hasta su último lanzamiento de la versión 7.1 en octubre de 1990. [3] Al mismo tiempo, el empaquetado de QuickBASIC fue modificado silenciosamente para que los discos utilizaran la misma compresión utilizada para BASIC PDS 7.1. [4] La versión Basic PDS 7.x del IDE se llamó QuickBASIC Extended (QBX), y solo se ejecutaba en DOS, a diferencia del resto de Basic PDS 7.x, que también se ejecutaba en OS/2. El sucesor de QuickBASIC y Basic PDS fue Visual Basic versión 1.0 para MS-DOS, distribuido en versiones Standard y Professional. Las versiones posteriores de Visual Basic no incluyeron versiones DOS, ya que Microsoft se concentró en aplicaciones de Windows.
Un subconjunto de QuickBASIC 4.5, llamado QBasic , se incluyó con MS-DOS 5 y versiones posteriores, reemplazando al GW-BASIC incluido con versiones anteriores de MS-DOS. Comparado con QuickBASIC, QBasic está limitado a un solo intérprete, carece de algunas funciones, solo puede manejar programas de un tamaño limitado y carece de soporte para módulos de programa separados. Dado que carece de un compilador, no se puede utilizar para producir archivos ejecutables, aunque su código fuente del programa aún se puede compilar con un compilador QuickBASIC 4.5, PDS 7.x o VBDOS 1.0, si está disponible.
QuickBASIC 1.00 para el sistema operativo Apple Macintosh se lanzó en 1988. Fue oficialmente compatible con máquinas que ejecutaban System 6 con al menos 1 MB de RAM. [5] QuickBASIC también podía ejecutarse en System 7 , siempre que el direccionamiento de 32 bits estuviera deshabilitado.
Hola mundo , versión más corta:
? "Hola Mundo"
Hola mundo , versión extendida:
CLS PRINT "Hola, mundo" FIN
LET BOTELLAS = 99 : LET BOTELLAS$ = "99" : LET BOTELLA$ = " botellas" PARA A = 1 A 99 PRINT BOTELLAS$ ; BOTELLA$ ; " de cerveza en la pared, " ; BOTELLAS$ ; BOTELLA$ ; " de cerveza." LET BOTELLAS = BOTELLAS - 1 SI BOTELLAS > 0 ENTONCES LET BOTELLAS$ = LTRIM$ ( STR$ ( BOTELLAS )) : LET PRONOUN$ = "uno" SI BOTELLAS = 0 ENTONCES LET BOTELLAS$ = "no más" : LET PRONOUN$ = "eso" SI BOTELLAS <> 1 ENTONCES LET BOTELLA$ = " botellas" SI BOTELLAS = 1 ENTONCES LET BOTELLA$ = " botella" PRINT "Toma " ; PRONOUN$ ; " y pásalo, " ; BOTELLAS$ ; BOTELLA$ ; "de cerveza en la pared". IMPRIMIR : SIGUIENTE UNA IMPRESIÓN "No más botellas de cerveza en la pared, no más botellas de cerveza". IMPRIMIR "Ve a la tienda y compra más, 99 botellas de cerveza en la pared".
Ejemplo gráfico:
PANTALLA 13 DIM a ( 3976 ) COMO ENTERO , b ( 3976 ) COMO ENTERO , c ( 3976 ) COMO ENTERO DIM d ( 3976 ) COMO ENTERO , e ( 3976 ) COMO ENTERO col % = 16 : col1 % = 16 : col2 % = 16 : col3 % = 16 : col4 % = 16 col5 % = 16 : col6 % = 16 : col7 % = 16 : bandera = 1 : bandera1 = 1 bandera2 = 1 : bandera3 = 1 : bandera4 = 1 : bandera5 = 1 : bandera6 = 1 : bandera7 = 1 OBTENER ( 1 , 38 ) - ( 318 , 62 ), a PONER ( 2 , 38 ) , a , PSET LINE ( 1 , 38 ) - ( 1 , 62 ), col % SI bandera = 1 ENTONCES col % = col % + 1 : SI col % = 32 ENTONCES bandera = 2 SI bandera = 2 ENTONCES col % = col % - 1 : SI col % = 16 ENTONCES bandera = 1 GET ( 2 , 63 ) - ( 319 , 87 ), b PONER ( 1 , 63 ), b , PSET LINEA ( 319 , 63 ) - ( 319 , 87 ), col1 % SI bandera1 = 1 ENTONCES col1 % = col1 % + 1 : SI col1 % = 32 ENTONCES bandera1 = 2 SI bandera1 = 2 ENTONCES col1 % = col1 % - 1 : SI col1 % = 16 ENTONCES bandera1 = 1 OBTENER ( 1 , 88 ) - ( 318 , 112 ), c PONER ( 2 , 88 ), c , PSET LINEA ( 1 , 88 ) - ( 1 , 112 ), col2 % SI bandera2 = 1 ENTONCES col2 % = col2 % + 1 : SI col2 % = 32 ENTONCES bandera2 = 2 SI bandera2 = 2 ENTONCES col2 % = col2 % - 1 : SI col2 % = 16 ENTONCES bandera2 = 1 OBTENER ( 2 , 113 ) - ( 319 , 137 ), d PONER ( 1 , 113 ), d , PSET LINEA ( 319 , 113 ) - ( 319 , 137 ), col3 % SI bandera3 = 1 ENTONCES col3 % = col3 % + 1 : SI col3 % = 32 ENTONCES bandera3 = 2 SI bandera3 = 2 ENTONCES col3 % = col3 % - 1 : SI col3 % = 16 ENTONCES bandera3 = 1 OBTENER ( 1 , 138 ) - ( 318 , 162 ), e PONER ( 2 , 138 ), e , PSET LINEA ( 1 , 138 ) - ( 1 , 162 ), col4 % SI bandera4 = 1 ENTONCES col4 % = col4 % + 1 : SI col4 % = 32 ENTONCES bandera4 = 2 SI bandera4 = 2 ENTONCES col4 % = col4 % - 1 : SI col4 % = 16 ENTONCES bandera4 = 1 BUCLE HASTA LEN ( INKEY$ )
Muestra REM de ordenamiento de burbuja N = 10 DIM A ( N ) COMO ENTERO PARA L = 1 A N A ( L ) = INT ( RND * 10 + 1 ) SIGUIENTE PARA X = 1 A N PARA Y = 1 A N - 1 SI A ( X ) < A ( Y ) ENTONCES INTERCAMBIAR A ( X ), A ( Y ) SIGUIENTE SIGUIENTE PARA L = 1 A N IMPRIMIR A ( L ) SIGUIENTE FIN
QuickBASIC tiene una comunidad no oficial de programadores aficionados que utilizan el compilador para escribir videojuegos , GUI y utilidades . [6] [7] [8] La comunidad ha dedicado varios sitios web, foros de mensajes y revistas en línea al lenguaje. [9] [10]
Hoy en día, los programadores a veces usan emuladores DOS , como DOSBox , para ejecutar QuickBASIC en Linux y en computadoras personales modernas que ya no admiten el compilador. [11] [12] Las alternativas a esto incluyen FreeBASIC y QB64 , pero aún no pueden ejecutar todos los programas QBasic/QuickBASIC. [13]
Desde 2008, un conjunto de rutinas TCP/IP para QuickBASIC 4.x y 7.1 ha revitalizado el interés por el software. En particular, la comunidad de aficionados a las computadoras antiguas ha podido escribir software para computadoras antiguas que ejecutan DOS, lo que permite que estas máquinas accedan a otras computadoras a través de una LAN o Internet. Esto ha permitido que sistemas tan antiguos como un 8088 cumplan nuevas funciones, como actuar como servidor web o usar IRC . [14]
Visual Basic de Microsoft fue el sucesor de QuickBASIC. Otros compiladores, como PowerBASIC y FreeBASIC , tienen distintos grados de compatibilidad. QB64 , un traductor multiplataforma de QuickBASIC a C++, mantiene una compatibilidad cercana al 100 % y compila de forma nativa para Windows , Linux y macOS . [15]
{{cite web}}
: CS1 maint: URL no apta ( enlace )