In questa pagina puoi ottenere un'analisi dettagliata di una parola o frase, prodotta utilizzando la migliore tecnologia di intelligenza artificiale fino ad oggi:
BBC BASIC is a version of the BASIC programming language released in 1981 as the native programming language for the BBC Micro home/personal computer, providing a standardized language for a UK computer literacy project of the BBC. It was written mainly by Sophie Wilson.
BBC BASIC, based on the older Atom BASIC for the Acorn Atom, extended contemporary microcomputer BASICs with named DEF PROC
/DEF FN
procedures and functions, REPEAT UNTIL
loops, and IF THEN ELSE
structures inspired by COMAL. The interpreter also included statements for controlling the BBC Micro's four-channel sound output and its low-/high-resolution eight-mode graphics display.
Due to a number of optimizations, BBC BASIC ran programs much faster than Microsoft BASIC running on similar machines. The optimizations included using multiple linked lists for variable lookup rather than a single long list, pre-defining the location of integer variables, and having separate integer maths routines. Speed was further improved on the BBC machine by its fast RAM chips, which allowed the MOS Technology 6502 processor and Motorola 6845 display driver to share memory without either pausing for access. As a result of these design features, BBC BASIC ran David Ahl's Creative Computing Benchmark in 21 seconds, besting even the IBM Personal Computer, and far outpacing most other 8-bit platforms. The only commercial 8-bit BASIC computers that were as fast as the BBC Micro were the Swedish ABC 80 and ABC 800. The improved BASIC 4 on the BBC Master executes the same benchmark in about seven seconds.
One of the unique features of BBC BASIC was the inline assembler, allowing users to write assembly language programs for the 6502 and, later, the Zilog Z80, NS32016 and ARM. The assembler was fully integrated into the BASIC interpreter and shared variables with it, which could be included between the [ and ] characters, saved via *SAVE and *LOAD, and called via the CALL or USR commands. This allowed developers to write not just assembly language code, but also BASIC code to emit assembly language, making it possible to use code-generation techniques and even write simple compilers in BASIC.