Sinclair BASIC

Sinclair BASIC

Sinclair BASIC (назван по фамилии изобретателя сэра Клайва Синклера) — диалект языка программирования BASIC, применявшийся на 8-разрядных бытовых компьютерах производства Sinclair Research и Timex Sinclair. Интерпретатор Sinclair BASIC разработан компанией Nine Tiles Networks Ltd.

Изначально разработан в 1979 году, для размещения в 4 килобайтах ПЗУ компьютера ZX80. Эта версия представляла собой неполную реализацию минимального стандарта ANSI 1978 года. При адаптации для компьютеров ZX81 и TS1000, имевших 8 КБ ПЗУ интерпретатор был улучшен, и в версии для компьютера ZX Spectrum с 16 КБ ПЗУ стал почти полной реализацией стандарта.

Содержание

Оригинальный Sinclair BASIC

Сессия редактирования в ZX81 BASIC, внесение изменений в работу компьютерной игры.

Большая верхняя часть экрана содержит код текущей загруженной программы, 3D Monster Maze. Текущая выбранная строка помечена «программным указателем», инвертированным символом знака 'больше'. Нижняя часть экрана содержит текущую версию редактируемой строки, находящейся в буфере строчного редактора. Текущая позиция ввода помечена инвертированной буквой, обозначающей режим ввода, буква 'L' обозначает режим обычного ввода букв. Пользователь изменил количество итераций в цикле задержки, чтобы повысить скорость игры. Нажатие клавиши ввода подтвердит внесение изменений.

Операторы

В версии для компьютера ZX Spectrum существует 86 операторов Sinclair BASIC, включая команды (50), функции (31), и другие ключевые слова (5):

ABS, ACS, AND¹, ASN, AT, ATN, ATTR, BEEP, BIN, BORDER, BRIGHT, CAT², CHR$³, CIRCLE, CLEAR, CLOSE#², CLS, CODE³, CONTINUE, COPY, COS, DATA, DEF FN, DIM, DRAW, ERASE², EXP, FLASH, FN, FOR, FORMAT², GO SUB, GO TO, IF4, IN, INK, INKEY$³, INPUT, INT, INVERSE, LEN, LET5, LINE, LIST, LLIST, LN, LOAD, LPRINT, MERGE, MOVE², NEW, NEXT, NOT¹, OPEN#², OR¹, OUT, OVER, PAPER, PAUSE, PEEK, PI, PLOT, POINT, POKE, PRINT, RANDOMIZE, READ, REM, RESTORE, RETURN, RND, RUN, SAVE, SCREEN$³, SGN, SIN, SQR, STEP, STR$³, TAB, TAN, THEN 4, TO, USR, VAL3, 6, VAL$³, VERIFY

Операторы, присутствующие только в версиях для ZX81, и его клонов TS1000 и TS1500:

FAST, SCROLL, SLOW, UNPLOT, GOSUB, GOTO (вместо GO SUB, GO TO в версии для ZX Spectrum)

В версии интерпретатора для 128K моделей (Spectrum 128K, Spectrum +2, +3, +2A, and +2B) было добавлено два оператора:

PLAY, SPECTRUM

Примечания

  1. Функции AND, NOT, и OR являются логическими операторами.
  2. CAT, CLOSE#, ERASE, FORMAT, MOVE, и OPEN# являются командами для работы с файлами на устройстве хранения данных ZX Microdrive, при попытке использования без наличия такого устройства (или дисковой системы, поддерживающей эти команды) приводят к ошибке.
  3. Имена строковых переменных могут содержать только одну букву.
    Таким образом, команды «LET A=5», «LET Apples=5», и "LET A$="Hello"" являются правильными, но "LET APPLES$="Fruit"" будет ошибочной.
  4. Оператор ELSE в IF—THEN(—ELSE) условиях не предусмотрен.
    Таким образом, вместо кода
       10 IF V=5 THEN GO TO 50 ELSE GO TO 100
    нужно использовать
       10 IF V=5 THEN GO TO 50
       20 GO TO 100
  5. Оператор LET является обязательным (то есть, нужно использовать «LET A=1», но не «A=1»); что является заметным отличием от большинства диалектов языка BASIC.
  6. Функция VAL обрабатывает не только числа, но и выражения. Например, «PRINT VAL(A$)», где строка A$ содержит «3*3+4+COS(0)». выведет число 14.

В отличие от диалектов BASIC для бытовых компьютеров, подобных Microsoft BASIC, где для доступа к фрагментам строк используются функции LEFT$(), MID$() и RIGHT$(), Sinclair BASIC использует способ, подобный работе с массивами. Например, «A$ (5 TO 10)» вернёт подстроку, начинающуюся с пятого, и кончающуюся десятым символом строковой переменной A$.

Timex BASIC

Timex BASIC — диалект, используемый на Spectrum-совместимом компьютере TS2068 (но не TS2048, который использует обычный Sinclair BASIC). Помимо стандартных операторов Sinclair BASIC, имеет шесть дополнительных:

DELETE, FREE, ON ERR, RESET, SOUND, STICK

Расширения и варианты

  • MegaBASIC, расширение разработанное в 1984 г., Mike Leaman из компании YS, имеет операторы while, repeat, until, команды для управления набором спрайтов. Расширение было нацелено на облегчение создание игровых и учебных программ. Сопровождалось программой Sprite Designer для создания спрайтов.
  • Beta BASIC, расширение Sinclair BASIC разработанное в 1985 г., Dr. Andy Wright из компании BetaSOFT. Распространено мнение о том, что это полноценный интерпретатор аргументированное тем, что имеется собственный редактор программ. На самом деле Beta BASIC (как и остальные расширения) не позволяет создавать программы работающие без загрузки кода Beta BASIC и использует процедуры ПЗУ (Sinclair BASIC).
  • PRO-DOS, расширение разработанное компанией HJB в 1985 г.
  • Show, расширение предназначенное не для программирования, а для создания простых презентационных роликов. Содержит демонстрационную программу. Дополнительные операторы позволяют создавать бегущие строки и надписи скроллирующиеся в любом направлении и выводимые разными шрифтами. Расширение оказалось востребованным студиями кабельного телевидения выводившими таким образом свою программу на день. Имеет версию адаптированную для IS-DOS.
  • Laser BASIC, чрезвычайно удачное расширение разработанное Oasis Software в 1986 г. Предназначалось специально для создания игровых программ, в каком качестве и стало популярно (из отечественных, на этом языке написана игра «Приключения Буратино» от Вячеслава Медноногова). Этот Бейсик входил в пакет Laser Compact, также включавший впечатляющие demo-программы и компилятор Бейсика Laser Compiler.
  • SAM BASIC, также разработанный Dr. Andy Wright, являлся интерпретатором BASIC для компьютера SAM Coupé, и имел обратную совместимость с версией Sinclair BASIC для ZX Spectrum.
  • Sinclair Extended BASIC является развивающимся ретро-проектом, целью которого является создание улучшенной версии Sinclair BASIC (бета-версия доступна на момент 2005 июля).

Источники

Ссылки



Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Полезное


Смотреть что такое "Sinclair BASIC" в других словарях:

  • Sinclair BASIC — (taking its name from innovator Sir Clive Sinclair) is a dialect of the BASIC programming language used in the 8 bit home computers from Sinclair Research and Timex Sinclair. The Sinclair BASIC interpreter was made by Nine Tiles Networks… …   Wikipedia

  • Sinclair BASIC — es el nombre que recibe el BASIC implementado en la ROM de los ordenadores Sinclair desde el ZX80 hasta las diferentes versiones del ZX Spectrum. Estos ordenadores se comercializaron desde 1980 (modelo Sinclair ZX80) hasta 1992[1] (modelos… …   Wikipedia Español

  • Sinclair BASIC — es el nombre que recibe el BASIC implementado en la ROM de los ordenadores Sinclair desde el ZX 81 hasta el ZX Spectrum. Estos ordenadores se comercializaron en los años 80 …   Enciclopedia Universal

  • Sinclair ZX Spectrum — de 48K. El Sinclair ZX Spectrum fue un ordenador de 8 bits basado en el microprocesador Zilog Z80A, fabricado por la compañía británica Sinclair Research y lanzado al mercado el 23 de abril de 1982. En Europa, el Sinclair ZX Spectrum fue uno de… …   Wikipedia Español

  • Sinclair ZX80 — ZX80 Тип Домашний компьютер Выпущен 1980 Выпускался по 1981 Процессор Z80 (на большинстве машин стоял аналог Память …   Википедия

  • Sinclair ZX80 — Sinclair ZX80. El Sinclair ZX80 fue un computador personal comercializado a partir de 1980 por Science of Cambridge. Fue notable por ser la primera computadora disponible en el Reino Unido por cien libras (£99,95, para ser exacto). Se… …   Wikipedia Español

  • Sinclair ZX80 — Der Sinclair ZX80 ist ein Heimcomputer der britischen Firma Sinclair aus dem Jahr 1980. Er ist der direkte Vorgänger des Sinclair ZX81. Die Hardware des in weit höheren Stückzahlen produzierten Nachfolgers ist ähnlich, jedoch höher integriert und …   Deutsch Wikipedia

  • Sinclair ZX81 — ZX81 Тип Домашний компьютер Выпущен 1981 Выпускался по 1983 Процессор Z80 (на большинстве машин стоял аналог NEC μPD780C 1) …   Википедия

  • BASIC — Класс языка: алгоритмическое, процедурное, объектное программирование Появился в: 1963 г. Расширение файлов: .bas Типизация данных: нестрогая Бейсик (от BASIC, сокращение от англ.  …   Википедия

  • BASIC — Información general Paradigma estructurado imperativo Apareció en 1964 Diseñado por John George Kemeny; Thomas Eugene Kurtz …   Wikipedia Español


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»