XBasic
Xbasic es un entorno de programación gratuito basado en BASIC, para Windows y GNU/Linux. Admite modos de consola y de GUI. Xbasic fue ideado en 1988 por Max Re…
Xbasic es un entorno de programación gratuito basado en BASIC, para Windows y GNU/Linux. Admite modos de consola y de GUI. Xbasic fue ideado en 1988 por Max Reason para su uso en un entorno Unix/m88k, y adaptado a Windows NT desde 1992. Xbasic es freeware desde 1999.
Diferencias con BASIC estándar, QBASIC y Visual Basic
Sintaxis
- Xbasic es un Lenguaje de programación estructurado y no usa números de línea. Se aceptan características típicas del basic, como los sufijos de tipo de datos (que se amplían enormemente), pero se evita la verbosidad de instrucciones BASIC como "OPEN ... FOR ... AS ..." en favor de un esquema basado en funciones.
- Los programas Xbasic se dividen en tres secciones, al estilo de los programas Pascal: "PROLOG" (declaración de tipos), "Entry()" (función principal) y funciones adicionales.
Variables
- A diferencia de ANSI BASIC, pero dentro de lo que es habitual en los BASIC actuales, se aceptan variables con nombres de cualquier longitud.
- Las constantes se identifican mediante el prefijo "$$"
- Se
Operadores
- A diferencia de ANSI BASIC, QBASIC o Visual Basic, Xbasic posee operadores de desplazamiento para la aritmética binaria, lo que permite mayor compatibilidad con programación a nivel binario, como el cálculo de CRC. También distingue entre operadores lógicos y operadores de aritmética binaria.
- Xbasic utiliza operadores similares a los del lenguaje C:
- "**" significa "elevado a"
- "^" es sinónimo de XOR (no significa "elevado a").
- "&" es sinónimo de AND (no significa "concatenar").
- "=" no se usa en las cláusulas IF (o, al menos, eso se supone).
- "==" se usa (en lugar de "=") en las cláusulas IF
Ramificación y subrutinas
- Xbasic, como QBASIC y posteriores, es un lenguaje de programación estructurado.
- Permite SELECT, DO, DO WHILE y DO UNTIL aparte de GOTO
- Permite declaraciones de funciones mediante FUNCTION() aparte de GOSUB. A diferencia de QBASIC o Visual Basic, no diferencia entre funciones (que producen una salida) y subrutinas (que no la producen).
Instrucciones de entrada/salida
- Xbasic usa su propio conjunto de instrucciones de entrada/salida.
- INLINE$() sustituye a INPUT, INPUT$, e INPUT#
- INKEY$ e INP() no se permiten.
- Los números de archivo se indican con [número] (XBasic) en vez de #número (BASICA/QBASIC/Visual Basic).
- Xbasic usa numeroarchivo=OPEN(nombrearchivo$, constante_modo) en vez de OPEN Nombrearchivo$ FOR modo AS #numeroarchivo (BASICA/QBASIC/Visual Basic).
- Se usa READ [numeroarchivo] en vez de GET #numeroarchivo ((BASICA/QBASIC/Visual Basic).
- Aparte de lo anterior, XBASIC admite entornos gráficos, y por tanto puede aceptar entrada/salida a través de eventos generados por controles situados en ventanas, al estilo de Visual Basic
Resumen
Los 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 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: XBasic
FUNCTION Entry ()
NombreUsuario$=INLINE$( "¿Cuál es su nombre?")
PRINT "Hola "; NombreUsuario$
DO
NoAsteriscos=SBYTE(INLINE$ ("¿Cuántos asteriscos desea?"))
Asteriscos$ = ""
Asteriscos$ = CHR$('*', NoAsteriscos)
PRINT Asteriscos$
DO
Respuesta$=INLINE$ ("¿Desea más asteriscos?")
LOOP UNTIL Respuesta$ <> ""
LOOP WHILE UCASE$(LEFT$(Respuesta$, 1)) = "S"
PRINT "Adiós";
FOR I = 1 TO 200
PRINT NombreUsuario$; " ";
NEXT I
PRINT
END FUNCTION
Enlaces externos
- Páginas de asistencia sobre XBASIC
- Asistencia en español: lista xbasic_es
- Ayuda en inglés:
- Página original (no mantenida)
- Página oficial
- Category:XBasic Tareas implementadas en XBasic en rosettacode.org
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.