BBC BASIC

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
BBC BASIC
Изображение логотипа
Класс языка процедурный, объектно-ориентированный, компонентно-ориентированный
Тип исполнения компилируемый, интерпретируемый
Появился в 1981
Разработчик Софи Уилсон
Выпуск 5.90b
Система типов не строгая
Основные реализации BASIC I, BASIC II, BASIC III, BASIC IV, BASIC V, BASIC VI, HI-BASIC, BAS128
Испытал влияние BASIC, Atom BASIC
Сайт bbcbasic.org

BBC BASIC — язык программирования семейства BASIC, созданный в 1981 году как встроенный интерпретатор Basic для компьютера BBC Micro компании Acorn. BBC Micro был специально создан по заказу британской компании BBC, за что и получил своё название.[1]

BBC BASIC основан на более старом Atom BASIC, имевший возможности работы с процедурами и функциями, а также со структурами IF-THEN-ELSE. Кроме того, он имел широкие возможности по работе со звуком и поддерживал графику с высоким разрешением.

Одной из уникальных особенностей BBC BASIС была поддержка элементов ассемблера и возможность писать на нём программы для MOS Technology 6502. Ассемблер был полностью встроен в BBC Basic — компиляция ассемблерной программы происходила во время интерпретации программы, откомпилированный код размещался в оперативной памяти (обычно для этого надо было заранее зарезервировать соответствующий кусок памяти), а потом двоичный код можно было записать на диск или вызвать прямо из программы. Это позволяло использовать при компиляции выражения с переменными языка и даже вызывать функции, существенно увеличивая функциональность компилятора.

В 1978 году Херман Хаузер и Эндрю Хоппер основали компанию Acorn Computers. Эндрю Хоппер сейчас является главой компьютерной лаборатории в Кембриджском университете.[2] Большинство кода было написано Софи Вилсон (англ.) и её коллегами.[3][4]

BASIC I, оригинальная версия, была написана для ранней версии BBC Micro.

BASIC II был использован в Acorn Electron и BBC Micro уже после 1982 года, включая BBC B+.

BASIC III издавался в Великобритании и США компанией Acron Computers под одной версией. В этой версии было исправлено множество ошибок, а также добавлены новые возможности, например, команда COLOR, изменявшая цвет вводимого текста. BASIC III также известен как HI-BASIC.

BASIC IV, также известный как CMOS BASIC, поддерживал компьютеры BBC Master и BBC Master Compact. В этой версии были добавлены новые команды, исправлены ошибки, появилась поддержка других процессоров.

HI-BASIC был доступен в двух версия; первая была основана на BASIC III, а вторая на BASIC IV. Версия поддерживалась процессорами Z80 и 6502 Second.[5]

Снимок экрана BBC Micro Model A с включенным BBC BASIC

По мере развития аппаратных средств выпускались новые версии BASIC, позволявшие использовать новые возможности аппаратуры. Например, с выпуском компьютеров на процессоре 6512 появились версии, использовавшие расширенный набор команд процессора — эти новые версии BASIC были несовместимы со старыми процессорами. Для работы на «втором процессоре» (на самом деле это был отдельный блок с собственным процессором и оперативной памятью, взаимодействовавший с основным процессором через кабель) были выпущены версии BASIC, которые при запуска на этом «втором процессоре» работали на верхних адресам памяти; это позволяло увеличить доступную BASIC-программе память примерно на четырнадцать килобайт (при том, что на «втором процессоре» BASIC-программа имела больше памяти за счёт того, что операционная система держала свои данные на основном процессоре).

Другая версия BBC BASIC, BAS128, поставлялась с компьютерами BBC Master и Master Compact. Она загружалась в основную RAM и использовала 64 КБ оперативной памяти компьютера (те модули, в которые обычно загружались резидентные программы типа драйверов дополнительных файловых систем; текстовых редакторов; etc). Это позволяло предоставить больше памяти BASIC-программе.

Acorn Archimedes (RISC OS)

[править | править код]

С переходом на 32-битный центральный процессор архитектуры ARM и снятием 16 КБ ограничения, появились новые возможности. Новый BASIC V версии 1.04 занимал 61 КБ памяти:

Особенности новой версии:

  • WHILE-ENDWHILE
  • IF-THEN-ELSE-ENDIF
  • CASE-OF-WHEN-OTHERWISE-ENDCASE,
  • оператор RETURN в процедурах,
  • библиотеки процедур (LIBRARY,INSTALL и OVERLAY),
  • LOCAL DATA и LOCAL ERROR,
  • RESTORE,
  • новые операторы,
  • STEP TRACE,
  • Команды для новой звуковой системы, мыши, графики.

Графические команды были совместимы со старыми версиями, но операторы звука отличаются. Вскоре ассемблер для процессора 6502 был заменён на ассемблер для ARM. По словам Acorn, BASIC V — «самый быстрый интерпретатор BASIC в мире».

BASIC VI является версией BASIC V, которая поддерживает 8-байтовый формат чисел. В BASIC I использовался 5-байтовый.

BBC BASIC V и VI поставлялись вместе с Acorn Archimedes и Risc PC. BBC BASIC V также мог запускаться на процессоре ARM на BBC Micro.

Последние версии RISC OS всё ещё содержат встроенный BBC BASIC.

Другие платформы

[править | править код]

BBC BASIC также был выпущен для многих других платформах.[6]

В дополнение BBC BASIC также поддерживал компьютеры BBC Micro с процессором Zilog Z80. В 2002 году BBC BASIC также стал поддерживаться на Sinclar Spectrum благодаря J.G Harston (он также создал версию для PDP-11).

Версия для Zilog Z80 также использовалась на компьютерах Tiki 100, Cambridge Z88, Amstrad NC100 и Amstrad NC200. На основе этой версии была создана версия для TI-83 Plus и TI-84 Plus серии графических калькуляторов.

Для компьютеров на основе IBM PC, была также создана версия BBC BASIC для DOS, известная как «BBCBASIC (86)».

Версия BBC BASIC была интегрирована в Microsoft Windows, и её версия Windows-версия[7] была создана Ричардом Расселом (который также был разработчиком версий для Z80 и x86) в 2001 году. Эта версия похожа по синтаксису на BASIC V/VI, но, конечно, содержит множество дополнений. Например, была добавлена возможность работы с DLL, а по функциям BBC BASIC для Windows не уступает C.

GPL клон BBC BASIC под названием Brandy[8] был написан на C.

Версия для Commodore 64 был написана компанией Aztec Software в начале 1980 годов.

Примечания

[править | править код]
  1. BBC Micro ignites memories of revolution. Publication date 21 March 2008. BBC News. Дата обращения: 28 ноября 2010. Архивировано 7 апреля 2008 года.
  2. UK home computer pioneer honoured. Publication date 30 December 2006. BBC News. Дата обращения: 30 ноября 2010. Архивировано 11 июля 2012 года.
  3. Video processor for Acorn/BBC computer. Publication date 5th July 2010. BBC News. Дата обращения: 30 ноября 2010. Архивировано 11 июля 2012 года.
  4. BBC Micro ignites memories of revolution. Publication date 21 March 2008. BBC News. Дата обращения: 30 ноября 2010. Архивировано 7 апреля 2008 года.
  5. Smith, Bruce. A & B Computing (англ.). — 1, Golden Square London: Argus specialist Publications, November 1984. — P. 6. — 140 p.
  6. BBC BASIC — MDFS::Software.$.BBCBasic. Дата обращения: 20 января 2011. Архивировано 14 декабря 2019 года.
  7. Версия BBC BASIC для Windows. Дата обращения: 20 января 2011. Архивировано 14 мая 2011 года.
  8. RISC OS Software. Дата обращения: 20 января 2011. Архивировано 17 июля 2011 года.