Movatterモバイル変換


[0]ホーム

URL:


Vai al contenuto
WikipediaL'enciclopedia libera
Ricerca

GW-BASIC

Da Wikipedia, l'enciclopedia libera.
GW-BASIC
linguaggio di programmazione
La finestra di apertura del GW-BASIC
AutoreMicrosoft
Data di origine1983
Ultima versione3.23
UtilizzoGeneral purpose
TipizzazioneForte
Influenzato daMicrosoft BASICA
Implementazione di riferimento
Licenzalicenza MIT
Modifica dati su Wikidata ·Manuale

IlGW-BASIC (Graphics andWindowsBeginner'sAll-purposeSymbolicInstructionCode[1]) è uno dei dialetti del linguaggioBASIC sviluppato daMicrosoft sulla base delBASICA. Fu inizialmente prodotto per laCompaq e inserito da Microsoft anche nel suo sistema operativoMS-DOS perIBM PC compatibili fino alla versione 5.0, quando fu rimpiazzato dalQBasic.

Il GW-BASIC è compatibile con ilBASICA e, come questo, poteva essere lanciato da disco removibile ma, a differenza di esso, non si appoggia all'interprete BASIC memorizzato nelleROM dei primi modelli diPC IBM ma viene caricato completamente in memoria al momento del suo avvio.

Il GW-BASIC è quasi privo delle caratteristiche dellaprogrammazione strutturata ma ha diversi comandi per la gestione della grafica e, parzialmente, anche per la gestione sonora (musica monofonica). Risultò quindi un linguaggio molto versatile, adatto a imparare i rudimenti della programmazione, e che ben si adattava a produrre ogni genere di applicazione, da semplici giochi a programmi per ufficio ad applicazioni di gestione dei dati su disco[2].

Sintassi

[modifica |modifica wikitesto]

Il GW-BASIC ha unIntegrated Development Environment (IDE) ariga di comando basato sulDartmouth BASIC: se l'utente inserisce una riga che inizia con un numero, questa viene considerata come una riga di codice da inserire nel programma residente in memoria, altrimenti l'interprete analizza la sintassi del testo inserito e, se sono presenti istruzioni o comandi validi, li esegue immediatamente. L'IDE include anche una particolare riga dello schermo (l'ultima in basso) in cui sono riportate le scorciatoie dei comandi assegnati aitasti funzione. I programmi vengono salvati in formato binario compresso con i comandi sostituiti dai relativitoken: c'è comunque la possibilità di salvarli in formatoASCII[3].

Come molte altre versioni del BASIC permicrocomputer circolanti all'epoca, anche il GW-BASIC era carente nel supporto per laprogrammazione strutturata (ad esempio non gestisce le variabili locali) ed era abbastanza lento a causa del fatto di essere unlinguaggio interpretato (per ovviare a questo problema Microsoft pubblicò uncompilatore denominatoBASCOM compatibile con il GW-BASIC, per quelle applicazioni che necessitavano di più velocità).

L'ambiente di sviluppo ha comandi per visualizzare (LIST), eseguire (RUN), salvare (SAVE) o caricare (LOAD) i programmi ma anche per tornare all'ambiente MS-DOS (SYSTEM). Questi comandi possono essere eseguiti anche come istruzioni di programma.

Come detto, il supporto alla programmazione strutturata è limitato. Il blocco condizionaleIF/THEN/ELSE deve essere scritto tutto su un'unica riga, mentre il bloccoWHILE/WEND può distribuirsi su più linee. Le funzioni possono essere definite solo utilizzando l'istruzioneDEF FNnome_func(x) (ad esempio la seguente funzione calcola un logaritmo:DEF FNLOG(base,numero)=LOG(numero)/LOG(base)), ma sempre inserendo tutto il codice in un'unica riga.

Il tipo di dati di unavariabile è definito ricorrendo a un carattere speciale inserito alla fine del nome della variabile: ad esempio, il carattere$ identifica lestringhe mentre% identifica unnumero intero. C'è la possibilità di creare dei gruppi di variabili di un determinato tipo di dato utilizzando l'istruzioneDEFtipo_datolettera, dovetipo_dato sta per il tipo (ad esempioDEFINT indica il tipo intero) elettera una lettera o un gruppo di lettere dell'alfabeto. Tutte le variabili indicate nel programma il cui nome inizia con la lettera specificata nella definizione sono del tipo di dato indicato. Ad esempioDEFINT A-C indica che tutte le variabili che iniziano con A, B o C sono di tipo intero. Il tipo standard di dati per le variabili non dichiarate è ilvirgola mobile (ofloating point)[4]

Il GW-BASIC permette la gestione diretta deijoystick e dellepenne ottiche: la gestione deimouse è invece possibile solo ricorrendo a driver o programmi esterni[5][6]. Tramite GW-BASIC è possibile leggere e scrivere su file o suporte seriali: di queste ultime può anche gestire gli eventi. Il GW-BASIC non gestisce le operazioni su nastro perché la porta per il registratore a cassette dei PC IBM originali non fu mai implementata sui computer compatibili.

Il GW-BASIC ha un supporto base per la musica, essendo in grado di riprodurre semplici note mediante l'istruzionePLAY a cui va passata una stringa contenente una codifica particolare indicante le note, la loro durata, l'ottava, ecc. (ad esempio,PLAY "edcdeee2dfedc4"). Un controllo più a basso livello è possibile con l'istruzioneSOUND che riproduce un suono di una particolare frequenza e durata tramite l'altoparlante interno del computer. Su alcuni computer, come ilTandy 1000, è possibile gestire fino a 3 canali audio con i comandiSOUND ePLAY.

Significato del nome

[modifica |modifica wikitesto]

Ci sono diverse teorie circa il significato delle iniziali"GW" presenti nel nome del software. La versione ufficiale indica in esse l'abbreviativo di "Graphics andWindows", ad indicarne le potenzialità grafiche estese rispetto ai precedenti BASIC. Una versione non ufficiale, forse la più accreditata perché confermata dallo stesso interessato, riporta che GW altro non sarebbero che le iniziali diGreg Whitten, un dipendente Microsoft che fu assunto dalla società nel1979 e che contribuì, fra gli altri progetti, allo sviluppo degli standard del linguaggio BASIC di Microsoft. Un altro significato di GW sarebbe, secondo Whitten,Gee Whiz (traduzione: "diamine", "perbacco") per il grande numero di istruzioni grafiche in 2D contenute nel linguaggio ma anche perché suonava bene per gliOEM del mercato giapponese. Lo stesso Whitten, però, non sa esattamente quale sia il significato di GW perché il nome GW-BASIC fu scelto daBill Gates in persona: a parer suo, GW potrebbero anche essere le iniziali di Gates e Whitten[7].

Note

[modifica |modifica wikitesto]
  1. ^GW-BASIC sul Linux Dictionary
  2. ^KindlyRat sulla diffusione del GW-BASIC nell'epoca degli home-computer, sugeocities.com(archiviato dall'url originale l'11 agosto 2006).
  3. ^GW-BASIC Documentation and UtilitiesArchiviato il 26 ottobre 2009 inInternet Archive.
  4. ^GW-BASIC User's Guide (1987)
  5. ^Running GW-BASIC under Windows
  6. ^Mouse into GW-BASIC, sumombu.com.URL consultato il 7 agosto 2009(archiviato dall'url originale il 5 marzo 2016).
  7. ^Greg Whitten sul GW-BASICArchiviato il 20 settembre 2008 inInternet Archive.

Bibliografia

[modifica |modifica wikitesto]

Voci correlate

[modifica |modifica wikitesto]

Collegamenti esterni

[modifica |modifica wikitesto]
Controllo di autoritàLCCN(ENsh89005015 ·GND(DE4138578-0 ·BNF(FRcb121459871(data) ·J9U(EN, HE987007532148605171
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica
Estratto da "https://it.wikipedia.org/w/index.php?title=GW-BASIC&oldid=141646373"
Categoria:
Categorie nascoste:

[8]ページ先頭

©2009-2025 Movatter.jp