Sinclair BASIC
Sinclair BASIC es el nombre que recibe el BASIC implementado en la ROM de los ordenadores Sinclair, Timex Sinclair y Amstrad Sinclair entre otros, desde el ZX80 hasta las diferentes versiones del ZX Spectrum. Estos ordenadores se comercializaron desde 1980 (modelo Sinclair ZX80) hasta 1992[1] (modelo Amstrad Sinclair ZX Spectrum +2B). ComandosEn su versión para ZX Spectrum 48k, el lenguaje tenía 86 palabras reservadas, de las cuales 50 eran comandos, 31 funciones y otras palabras clave 5:
Diferencias con el BASIC estándarSintaxis
10 FOR A=1 TO 2*PI Había que teclear 10 F <CAPS-SHIFT>-A <SYMBOL-SHIFT>-<L> 1 <SYMBOL-SHIFT>-<F> 2 <SYMBOL-SHIFT>-< B> <SYMBOL-SHIFT>-<CAPS-SHIFT>-<M>
10 LET A$="ZXSPECTRUM" 20 PRINT A$(TO 3) : REM "ZXS" 30 PRINT A$(4 TO 6): REM "PEC" 40 PRINT A$(7) : REM "T" 50 PRINT A$(8 TO): REM "RUM"
10 LET solo una cosa=1 20 PRINT solo una cosa Operadores
10 PRINT "TENGO " +("HAMBRE " AND COMIDA<0)+("FRIO " AND TEMPERATURA<10) Ramificación y subrutinas
10 LET FIN=40 20 GOTO FIN 30 PRINT "ESTO NO SE IMPRIME" 40 PRINT "FIN DEL PROGRAMA" Instrucciones de entrada/salida
ResumenLos siguientes cuadros comparan XBASIC con un Basic original no estructurado, utilizando el programa de ejemplo que aparece en el artículo de la Wikipedia sobre BASIC: Ejemplo 1: BASIC original no estructurado (Applesoft BASIC) 10 INPUT "¿Cuál es su nombre? "; U$ 20 PRINT "Hola "; U$ 30 INPUT "¿Cuántos asteriscos desea? "; N 35 S$ = "" 40 FOR I = 1 TO N 50 S$ = S$ + "*" 55 NEXT I 60 PRINT S$ 70 INPUT "¿Desea más asteriscos? "; A$ 80 IF LEN(A$) = 0 THEN GOTO 70 90 A$ = LEFT(A$, 1) 100 IF (A$ = "S") OR (A$ = "s") THEN GOTO 30 110 PRINT "Adiós "; 120 FOR I = 1 TO 200 130 PRINT U$; " "; 140 NEXT I 150 PRINT Ejemplo 2: Sinclair BASIC 5 OVER 1:REM usado en combinación con CHR$ 8 para producir acentos. 10 INPUT "Cua"+CHR$ 8+"'l es su nombre? "; U$ 20 PRINT "Hola "; U$ 30 INPUT "Cua"+CHR$ 8+"'ntos asteriscos desea? "; N 35 LET S$ = "" 40 FOR I = 1 TO N 50 LET S$ = S$ + "*" 55 NEXT I 60 PRINT S$ 70 PRINT "Desea ma"+CHR$ 8+"'s asteriscos? ";: INPUT A$ 80 IF LEN A$ = 0 THEN GOTO 70 90 LET A$ = A$(1) 100 IF (A$ = "S") OR (A$ = "s") THEN GOTO 30 110 PRINT "Adio";CHR$ 8;"'s "; 120 FOR I = 1 TO 200 130 PRINT U$; " "; 140 NEXT I 150 PRINT:OVER 0: Versiones![]() Sinclair ZX80/ZX81En la versión para el Sinclair ZX80 y el Sinclair ZX81, el intérprete contaba con algunos comandos que fueron eliminados en versiones posteriores: Microdigital TKMicrodigital Eletronica lanzó dos ordenadores clónicos de ZX Spectrum, el TK 90X y el TK 95, incorporando al BASIC de Sinclair dos comandos nuevos: Timex Sinclair 2068El dialecto empleado en los ordenadores Timex Sinclair 2068, añadía seis comandos al Sinclair BASIC, que no fueron continuados en posteriores modelos: Sinclair ZX Spectrum 128kEl modelo original de ZX Spectrum 128 lanzado en 1985 por Investrónica y Sinclair en España incluía cuatro comandos que no fueron mantenidos en posteriores versiones: Todos los modelos de 128k (ZX Spectrum 128, +2, +3, +2A, y +2B) incorporaron dos comandos adicionales:
Amstrad Sinclair ZX Spectrum +3/+2AEl modelo ZX Spectrum 128 +3 fue lanzado en 1987 por Amstrad, y usaba varios comandos de versiones anteriores, modificando la sintaxis, para trabajar con el sistema operativo +3DOS y con los ficheros de la unidad de disco o el disco RAM: Compiladores![]() Si bien el Sinclair BASIC es un lenguaje interpretado, a lo largo del tiempo fueron apareciendo distintos programas para compilar el mismo, entre ellos:[2]
Referencias
Bibliografía consultada
Enlaces externos
|