BASICA

(Redirigido desde «IBM BASICA»)

Los lenguajes de programación: BASIC C, BASIC D, BASICA y GW-BASIC son versiones de BASIC desarrollados como intérpretes de instrucciones, y no generaban código ejecutable independiente del editor del lenguaje.

Desarrollador(es)
Microsoft (para IBM)
Información general
Apareció en 1981
Influido por IBM Cassette BASIC, IBM Cassette BASIC
Ha influido a GW-BASIC
Sistema operativo PC DOS

Las líneas de programa están necesariamente numeradas, y se ejecutan por orden correlativo de numeración, el editor es por líneas, una sola línea cada vez, que puede ser modificada o añadida.

Estos intérpretes de BASIC pueden ser utilizados en los ordenadores actuales, basados en microprocesador Intel o compatible.

Soporte hardware

editar
 
PC 5150 de IBM

En 1981 IBM presentó una versión de ordenador llamado PC, con microprocesador Intel 8088, bus de datos de 8 bit, 16 bit de bus de direcciones lo que le permitía direccionar hasta 1 Mbyte de memoria, con una frecuencia de funcionamiento de 4,77 MHz, con 40 Kb de ROM y 64 Kb de RAM, ampliable hasta 256 Kb, que funcionaba con el sistema operativo MS-DOS de Microsoft, con unidad de disco flexible de 5 1/4 de 160 Kb de capacidad. Monitor de 12", en pantalla de texto de 25 líneas y 80 columnas.

En 1983 Se presentó el modelo XT que ampliaba la memoria a 512 Kb, con disco duro de 10 Mb, y unidad flexible de 360 Kb.

En 1984 IBM presentó una nueva versión de PC, que llamó: AT, con memoria central de 512 Kb, ampliable a 3 Mb, microprocesador Intel 80286 con frecuencia de funcionamiento de 6 MHz, que funcionaba con el sistema operativo DOS 3.0 y 3.1, disco flexible de alta capacidad de 1,2 Mb y disco duro de 20 Mb.

BASIC C

editar

Estos ordenadores traían grabada en ROM una versión de BASIC llamada: BASIC de casete, que también se denominó BASIC C, esta versión se cargaba en memoria automáticamente cuando se arrancaba el ordenador sin sistema operativo, tenía instrucciones específicas para poner en marcha una cinta de casete, y leer datos de ella secuencialmente, no tenía instrucciones para el acceso a disco y los programas escritos tampoco podían ser salvados en disco.

IBM Advanced BASIC (BASICA)

editar

IBM Advanced BASIC (BASICA.COM) fue también incluido el IBM PC DOS original, y requería 48 KB de RAM y el código de ROM del Cassette BASIC. Agregaba funciones de acceso de archivos en disquetes, almacenamiento de programas en disco, sonido monoaural utilizando el altavoz del PC, funciones gráficas para colocar y borrar píxeles, dibujar líneas y círculos, poner colores, manejo de eventos para comunicaciones y uso de palanca de mando. BASICA no podía correr en las computadoras clones de IBM (tampoco en las llamadas "100% compatibles") o en los modelos posteriores de IBM, ya que carecían del ROM BASIC requerido.

Con el disco de PC-DOS o simplemente DOS de IBM, venían dos versiones de BASIC, la que se llamaba BASIC de disco, o BASIC D, y otra más completa llamada BASICA, muy utilizada y posiblemente la versión de BASIC más popular en la época.

Las versiones de BASICA fueron las mismas del respectivo DOS, empezando con la versión v1.00 y finalizando con la versión v3.30. Las versiones iniciales de BASICA no soportaban los subdirectores y algunos comandos gráficos funcionaban de manera ligeramente distinta. Por ejemplo, si el comando LINE era utilizado para dibujar líneas que salían fuera de la pantalla, BASIC intersecaba la línea con la más cercana; mientras que en BASIC 2.x y superiores, la línea salía fuera de pantalla y no intersecaba. El comando PAINT en BASIC 1.x comenzaba rellenando la coordenada específica y se expandía hacia afuera alternando las direcciones de arriba y abajo; mientras que en BASIC 2.x rellenaba todo por debajo de la coordenada inicial, y tras finalizar todo por encima. El comando PAINT en BASIC 1.x también utilizaba la pila del sistema como almacenamiento para rellenar áreas complejas, por lo que era posible generar un error de OVERFLOW o desbordamiento de búfer. Para remediar esto, el comando CLEAR podía utilizarse para expandir el búfer del BASIC (128 bytes es el tamaño predefinido). BASIC 2.x no utilizaba el búfer cuando se utilizaba el comando PAINT y por ello está libre de este problema.

Compaq BASIC 1.13 fue el primer BASIC que no requería BASIC de casete, así como también fue la única versión además de IBM BASICA 1.00 and 1.10 en utilizar FCBs e incluir el comando original LINE con intersección de líneas (el comando PAINT en Compaq BASIC 1.13 trabajaba como en las versiones posteriores de BASICA/GW-BASIC, utilizando el algoritmo de rellenado y sin búfer.

Las primeras versiones de PC DOS incluían algunos programas de ejemplo en BASIC demostrando las capacidades del PC, incluyendo el juego DONKEY.BAS. GW-BASIC es idéntico a BASICA, con la diferencia que incluía el código del Cassette BASIC en el programa, permitiendo a las computadoras clones y modelos posteriores ejectutar BASIC.

GW-BASIC

editar

Microsoft comercializaba su propia versión de sistema operativo MS-DOS, Prácticamente idéntico al DOS de IBM. Con MS-DOS venía la versión GW-BASIC, Las versiones de BASICA y GW-BASIC son prácticamente idénticas.

Ejemplo de programa

editar

Un programa sencillo que te pregunta el nombre y te saluda:

10 REM este programa te saluda
20 INPUT " Cual es tu nombre: ", Nombre$
30 PRINT " Hola "; Nombre$; " como estas."

Un programa, más elaborado, para resolver una ecuación de segundo grado:

 
10 CLS 
20 PRINT " RESOLUCION DE UNA ECUACION DE SEGUNDO GRADO" 
30 PRINT " Ax² + Bx + C = 0" 
40 PRINT 
50 INPUT " COEFICIENTE A: ", A 
60 INPUT " COEFICIENTE B: ", B 
70 INPUT " COEFICIENTE C: ", C 
80 PRINT 
100 IF A = 0 THEN 350 
110 D = B ^ 2 - 4 * A * C 
120 IF D <= 0 THEN 200 
130 PRINT " SOLUCION DOBLE" 
140 PRINT " X1="; (-B + SQR(D)) / (2 * A)
150 PRINT " X2="; (-B - SQR(D)) / (2 * A)
160 END 
200 REM D MENOR O IGUAL QUE CERO 
210 IF D = 0 THEN 300 
230 PRINT " RAIZ IMAGINARIA" 
240 PRINT " X1= "; -B / (2 * A); "+"; ABS(SQR(-D) / (2 * A)); "i" 
250 PRINT " X2= "; -B / (2 * A); "-"; ABS(SQR(-D) / (2 * A)); "i" 
260 END 
300 PRINT " SOLUCION UNICA" 
310 PRINT " X1=X2="; -B / (2 * A) 
320 END 
350 REM A=0 
360 IF B = 0 THEN 500 
370 REM ECUACION DE PRIMER GRADO 
380 PRINT " ECUACION DE PRIMER GRADO" 
390 PRINT " X="; -C / B 
400 END 
500 REM A=0 Y B=0 
510 IF C = 0 THEN 600 
520 PRINT C; "= 0, IMPOSIBLE" 
530 END 
600 REM A=0, B=0 Y C=0 
610 PRINT " SIN ECUACION" 
620 END 
650 REM ECUACION DE PRIMER GRADO 
660 PRINT " ECUACION DE PRIMER GRADO" 
670 PRINT " X="; -C / B 
680 END

Véase también

editar

Bibliografía

editar
  1. Turgeon Practicals GW Basic (1 edición). Comercial Turgeon, S.A. 9 de 1991. p. 29. ISBN 978-84-7977-072-3. 
  2. Jerez Rodríguez, José María (10 de 1990). Informática y programación Basic (1 edición). Sistema 3. p. 123. ISBN 978-84-404-7576-3. 
  3. Aguado-Muñoz Prada, Ricardo (9 de 1990). Basic básico. Curso de programación (21 edición). Computer School. p. 256. ISBN 978-84-86529-00-0. 
  4. Albrech, Bob; Inman, Don (8 de 1990). GW-Basic a su alcance. tr.: Vaquero Martín, M. Ángeles (1 edición). McGraw-Hill / Interamericana de España, S.A. p. 432. ISBN 978-84-7615-538-7. 
  5. Nucera Mezzano, Claudio (4 de 1990). Lenguaje programación Basic (2 edición). Epicentro. p. 182. ISBN 978-84-404-1872-2.