Microsoft BASIC

редактировать
Microsoft BASIC
Разработано Microsoft
Developer Microsoft
Первое появление1975 (см. Altair BASIC )
Стабильный выпуск см. Visual Basic.NET / 2018

Microsoft BASIC является основным программным обеспечением продукт компании Microsoft и превратился в линейку интерпретаторов BASIC, адаптированных для множества различных микрокомпьютеров. Впервые он появился в 1975 году как Altair BASIC, который был первой версией BASIC, опубликованной Microsoft, а также первым языком программирования высокого уровня, доступным для микрокомпьютера Altair 8800. 21>

Во время повального увлечения домашними компьютерами в конце 1970-х - начале 1980-х годов Microsoft BASIC был перенесен и поставлен практически на любой компьютерный дизайн. Незначительные изменения для добавления поддержки специфичных для машины функций, особенно графика, привела к изобилию связанных дизайнов такие как Commodore BASIC и Atari Microsoft BASIC.

Поскольку первые домашние компьютеры уступили место новым разработкам, таким как IBM Personal Computer и Apple Macintosh, BASIC больше не использовался так широко, хотя сохранил сильных поклонников. Выпуск Visual Basic возродил его популярность, и он по-прежнему широко используется на платформах Microsoft Windows в своем последнем воплощении, Visual Basic.NET

Содержание
  • 1 Altair BASIC и первые микрокомпьютеры
  • 2 Лицензии производителям домашних компьютеров
    • 2.1 Расширенный BASIC-80
    • 2.2 Диск BASIC-80
    • 2.3 Автономный диск BASIC-80
    • 2.4 TRS-80 Уровень II / III BASIC
    • 2.5 BASIC-86
    • 2.6 Texas Instruments BASIC
    • 2.7 6502 BASIC
    • 2.8 BASIC-68 и BASIC-69
    • 2.9 MSX
  • 3 Современные потомки
  • 4 Варианты и производные от Microsoft BASIC
  • 5 См. также
  • 6 Примечания
  • 7 Ссылки
  • 8 Внешние ссылки
Altair BASIC и первые микрокомпьютеры
Комплектный компьютер Altair 8800 с популярной моделью 33 ASR (Автоматическая отправка и получение) Телетайп в качестве терминала, устройства для чтения бумажной ленты и перфоратора для бумажной ленты.

Интерпретатор Altair BASIC был разработан основателями Microsoft Полом Алленом и Билл Гейтс с использованием самодельного Int el 8080 эмулятор, работающий на PDP-10 миникомпьютере. Диалект MS по образцу Digital Equipment Corporation BASIC-PLUS на PDP-11, который Гейтс использовал в средней школе. Первые версии поддерживали только целочисленную математику, но Монте Давидофф убедил их, что арифметика с плавающей запятой возможна, и написал библиотеку, которая стала Microsoft Binary Format.

Altair. BASIC поставлялся на бумажной ленте и в своей исходной версии занимал 4 КБ памяти. Доступны следующие функции и операторы:

LIST, NEW, PRINT, INPUT, IF... THEN, FOR... NEXT, SQR, RND, SIN, LET, USR, DATA, READ, REM, CLEAR, STOP, TAB, RESTORE, ABS, END, INT, RETURN, STEP, GOTO и GOSUB.

В 4k BASIC не было строковых переменных, и единственным поддерживаемым числовым типом была 32-битная плавающая точка одинарной точности. Имена переменных состоят из одной буквы (A – Z) или одной буквы, за которой следует одна цифра (0–9), что позволяет использовать до 286 числовых переменных.

Для машин с большим объемом памяти, версия 8 КБ добавила 31 дополнительный оператор и поддержку строковых переменных и связанных с ними операций, таких как MID $ и конкатенация строк. Строковые переменные обозначались суффиксом $, который остался в более поздних версиях языка. Позже Microsoft выпустила 12k Extended BASIC, который включал 64-битные переменные двойной точности, структуры IF... THEN... ELSE, пользовательские функции, более сложные команды редактирования программ и описательные сообщения об ошибках, а не номера ошибок. Числовые переменные теперь имеют три основных типа:% обозначает 16-разрядные целые числа, # обозначает 64-разрядные числа с двойной точностью и! обозначает 32-битные одиночные игры, но это был формат по умолчанию, поэтому! редко встречается в программах.

Расширенная версия 8 КБ была затем обобщена в BASIC-80 (8080/85, Z80 ) и перенесена в BASIC-68 (6800 ), BASIC- 69 (6809 ) и 6502 -BASIC. 6502 имел несколько менее плотный ассемблерный код и был расширен до чуть менее 8 КБ для версии с одинарной точностью или 9 КБ для версии, использующей промежуточный 40-битный формат с плавающей запятой вместо исходного 32-битного. версия. Этот новый 40-битный формат стал наиболее распространенным, так как он использовался на большинстве машин того времени на базе 6502. Он также был перенесен на 16-битный BASIC-86 (8086/88 ).

Последним основным выпуском BASIC-80 была версия 5.x, которая появилась в 1981 году и добавила поддержку 40-символьных имен переменных, циклов WHILE... WEND, динамического выделения строк и некоторых других функций. В BASIC 5.x удалена возможность перехвата программных строк.

Основной набор команд и синтаксис одинаковы во всех реализациях Microsoft BASIC, и, вообще говоря, программу можно запускать в любой версии, если она не использует специфические для оборудования функции или числа с двойной точностью (не поддерживается в некоторых реализациях).

Лицензии для производителей домашних компьютеров

После первоначального успеха Altair BASIC, Microsoft BASIC стал основой для прибыльного бизнеса по лицензированию программного обеспечения, будучи перенесенным на большинство многочисленных домашних и другие персональные компьютеры 1970-х и особенно 1980-х годов, и постепенно расширялись. В отличие от оригинального Altair BASIC, большинство домашних компьютеров BASIC находятся в ROM и, следовательно, доступны на машинах при включении в виде характерного приглашения «READY.». Следовательно, Microsoft и другие варианты BASIC составляют значительную и видимую часть пользовательского интерфейса рудиментарных операционных систем многих домашних компьютеров.

К 1981 году Microsoft BASIC был настолько популярен, что даже компании, которые у BASIC уже была лицензия на этот язык, например, IBM для своего Персонального компьютера и Atari, который продавал как Atari Microsoft BASIC, так и собственный Atari BASIC. Дон Эстридж из IBM сказал: «У Microsoft BASIC были сотни тысяч пользователей по всему миру. Как вы собираетесь с этим спорить?» Microsoft лицензировала аналогичные версии компаниям, которые конкурировали друг с другом. После лицензирования IBM Advanced BASIC (BASICA), например, IBM, Microsoft передала лицензию на совместимый GW-BASIC производителям клонов ПК, а также продала копии розничные клиенты. Компания также лицензировала Applesoft -совместимый BASIC для VTech для своего Laser 128 клона.

Extended BASIC-80

Известные варианты:

Диск BASIC-80

MBASIC доступен для CP / M-80 и ISIS-II. Также для TEKDOS.

MBASIC доступен урезанный BASIC-80 с только аппаратно-нейтральными функциями. Однако из-за популярности CP / M подавляющее большинство машин Z80 работало с MBASIC, а не с версией, настроенной для конкретного оборудования (TRS-80 BASIC был одним из немногих исключений). Карта Microsoft CP / M для Apple II включала модифицированную версию MBASIC, в которую были включены некоторые графические команды из Applesoft BASIC, такие как HPLOT, но полный набор команд не поддерживается.

Автономный диск BASIC-80

Первая реализация, в которой использовался 8-битный вариант таблицы размещения файлов, была адаптацией BASIC для Терминал ввода данных на базе Intel 8080 NCR 7200, 7520 или 7530 с 8-дюймовыми гибкими дисками в 1977/1978 гг.

TRS-80 Level II / III BASIC

Компьютер TRS-80 изначально предлагался с адаптацией Tiny BASIC Ван Чена Ли (Level I BASIC ); через несколько месяцев он был заменен портом BASIC-80, который включал в себя часть набора команд BASIC уровня I, особенно команды для установки графических символов. Уровень II BASIC содержал некоторые функции Extended BASIC, хотя из-за необходимости включения команд уровня I, таких как SET и PSET, другие функции, такие как описательные сообщения об ошибках, по-прежнему оставались в стороне; впоследствии они были добавлены в TRS-80 Disk BASIC.

TRS-80 Model 4 имел более новый дисковый BASIC, который использовал ядро ​​BASIC-80 5.x, которое включало поддержку 40-символьных имен переменных. Таким образом, возможность обрабатывать строки программы (без пробелов между ключевыми словами и аргументами) стала невозможной, как это было на уровне II. Больше не было необходимости резервировать строковое пространство. Новые возможности включают определяемые пользователем функции (DEF FN) и доступ к системным функциям TRSDOS 6 через ключевое слово SYSTEM. Измененная версия, опубликованная позже компанией Logical Systems, поставщиком ОС, в обновлении LS-DOS версии 6.3, добавила однобуквенный доступ к функциям управления BASIC (например, LIST и EDIT) и прямой доступ к вызовам супервизора LS-DOS. Среда редактирования программы по-прежнему была линейно-ориентированной. Средство, доступное на уровне II для сортировки массивов (CMD «O»), было недоступно; программисты и пользователи должны были изобретать свои собственные обходные пути.

BASIC-86

Первая реализация в качестве автономной дисковой языковой системы была для Seattle Computer Products Bus S-100 Плата процессора 8086 в 1979. Он использовал 8-битную файловую систему FAT.

Microsoft также предложила версию Standalone BASIC-86 для SBC-86/12 для платформы Intel 8086 в 1980 году.

Texas Instruments BASIC

Это версия BASIC используется в компьютерной линейке TI-99 / 4A компании Texas Instruments. Хотя он очень похож на Microsoft BASIC, TI-99/4 BASIC не был написан Microsoft, как ходили слухи. По словам инженера TI Х. Шурмана; «С ними (в виде Боба Гринберга из Microsoft) был заключен контракт на разработку BASIC для SR-70 (который также иногда называют 99/7), но BASIC для 99/4 был разработан собственными силами. ' Ti-99/4 BASIC был основан на Dartmouth Basic и соответствует американскому национальному стандарту минимального базового уровня (ANSI X3.60-1978).

6502 BASIC

Microsoft перенесла BASIC-80 на 6502 летом 1976 года; в основном это был прямой порт 8k-версии BASIC-80, и он включал те же самые запросы, запрашивающие размер памяти и, хочет ли пользователь, чтобы функции с плавающей запятой были включены или нет (если они активны, использовались дополнительные 135 байтов памяти). Самыми ранними машинами, которые использовали 6502 BASIC, были OSI Model 500 и KIM-1 в 1977 году. 6502 BASIC включал определенные функции из Extended BASIC, такие как определяемые пользователем функции и описательные сообщения об ошибках, но опущены другие функции, такие как переменные двойной точности и оператор PRINT USING. В качестве компенсации за отсутствие переменных с двойной точностью Microsoft включила поддержку 40-битных чисел с плавающей запятой вместо 32-битных чисел с плавающей запятой в BASIC-80, а выделение строк было динамическим (таким образом, пользователю не нужно было резервировать строковое пространство, как в BASIC-80). Однако производители все еще могут запросить BASIC с 32-битной плавающей точкой для немного меньшего объема памяти; Например, Disk BASIC для 8-битной Atari использует 32-битную плавающую точку, а не 40-битную.

Стандартные функции 9K-версии Microsoft 6502 BASIC включают:

  • оператор GET для обнаружения нажатия клавиши
  • Хруст строки - строки программы не требуют никаких пробелов, кроме номера строки и оператор
  • Поддерживаются только типы переменных: строковые, одинарной точности и целые числа (только массивы)
  • Длинные имена переменных не поддерживаются, распознаются только первые два символа
  • Динамический выделение строк

6502 BASIC не хватало стандартизированного набора команд для вывода на диск и принтер; их должен был добавить поставщик, и они широко варьировались в зависимости от реализации.

Более поздние реализации 6502 Basic (1983-) были улучшены во многих аспектах. В то время как ранние машины Commodore (VIC-20, C64) имели BASIC, очень близкий к 6502 MS BASIC, более поздние 8-битные машины Commodore (серии C = 64, PET и C = 128 назывались V3.5, V4.0 и V7. 0) были внесены многочисленные улучшения, которые сделали BASIC более полезным и удобным для пользователя:

  • Дисковые команды (DIRECTORY, DSAVE, DLOAD, BACKUP, HEADER, SCRATCH, COLLECT, DVERIFY, COPY, DELETE, RENAME и т. Д.)
  • Графические команды (CIRCLE, DRAW, BOX, COLOR (фона, границы и т. Д.), PAINT, SCALE)
  • Копирование графического блока и логическая операция с существующим графическим экраном (SSHAPE и GSHAPE с OR, AND, XOR и т. Д.)
  • Определение спрайтов, отображение и анимация команд на C128, даже сохранение спрайтов в двоичные файлы
  • Звуковые команды (VOL, SOUND), позже на C = 128 Музыкальные команды ( Программирование фильтров ADSR и SID (команды ENVELOPE и FILTER), PLAY, TEMPO)
  • Признаки более структурированного программирования: IF – THEN – ELSE, DO – LOOP – WHILE / UNTIL – EXIT, ON – GOSUB
  • Расширенные команды ввода-вывода для специальных функций: РАДОСТЬ, Функция k eys
  • Команды отладки: STOP, CONT, TRON, TROFF, RESUME
  • Расширенная обработка экрана символов: WINDOW
  • Поддержка более простой разработки программ: RENUMBER, NEW, MONITOR, RREG
  • Spectravideo CompuMate на Atari 2600 MOS Technology 6507 CPU в 1983

BASIC-68 и BASIC-69

Каталоги Microsoft 1980-х годов также показали наличие BASIC-68 и BASIC-69 для микропроцессоров Motorola 6800 и 6809 соответственно, работающих под управлением операционных систем FLEX., а также упомяните OEM-версии для Perkin-Elmer, Ohio Nuclear, Pertec и систем. Похоже, что это то, что также является основой Microsoft / Epson BASIC в портативном компьютере Epson HX-20, который имеет два процессора Hitachi 6301, которые, по сути, являются «усиленными» 6801. Большинство из них основные функции BASIC-68 и BASIC-69 были скопированы непосредственно из BASIC-80.

BASIC-69, в частности, также был лицензирован для Tandy, где он стал ядром Color BASIC на Цветной компьютер TRS-80. Не путать с BASIC09, совершенно другим BASIC, созданным Microware в качестве основного языка для его OS-9, другой ОС, доступной на Color Computer (Microware также написала версию 2.0 Extended Color BASIC, когда Microsoft отказалась это сделать).

MSX

Microsoft произвела на основе ROM MSX BASIC для использования в домашних компьютерах MSX, которые использовали процессор Z80. Эта версия поддерживала графические и звуковые системы компьютеров MSX; в некоторых вариантах также была поддержка дисководов.

Современные потомки

Никаких разновидностей Microsoft BASIC (BASICA, GW-BASIC, QuickBasic, QBasic ) в настоящее время распространяется с Microsoft Windows или DOS. Однако версии, которые по-прежнему будут работать на современных машинах, можно загрузить с различных сайтов в Интернете или найти на старых дисках DOS.

Последним воплощением Microsoft BASIC является Visual Basic.NET, который включает некоторые функции из C ++ и C # и может использоваться для разработки Веб-формы, формы Windows, консольные приложения и серверные приложения. Большинство примеров кода.NET представлены как на VB.NET, так и на C #, и VB.NET по-прежнему пользуется популярностью у бывших программистов на Visual Basic .

. В октябре 2008 года Microsoft выпустила Small Basic. В языке всего 14 ключевых слов. Версия 1.0 Small Basic (12 июня 2011 г.) была выпущена вместе с обновленным веб-сайтом Microsoft MSDN, который включал полный учебный план для учителей, руководство по началу работы и несколько электронных книг. Small Basic существует, чтобы помочь учащимся в возрасте восьми лет изучить основы компьютерного программирования, а затем перейти на Visual Basic с помощью загружаемого программного обеспечения Visual Studio Express, где они могут продолжить работу. на основе изучения Visual C #, VB.NET и Visual C ++.

Варианты и производные от Microsoft BASIC
См. Также
Примечания
  1. ^ Источники различаются в отношении первого терминала ввода данных NCR, интегрирующего поддержка файловой системы FAT. По словам Стивена Мейнса и Пола Эндрюса, «Гейтс», разработка была для NCR 8200 в конце 1977 года, ошибочно классифицированная как обновление на дискете до NCR 7200, который был выпущен в 1975-11 годах и был построен на 8-битном процессоре Intel 8080, но был только на кассетах. Однако NCR Century 8200 был 16-битным миникомпьютером, к которому можно было подключить несколько терминалов ввода данных. Марк Макдональд даже вспомнил NCR 8500, мэйнфрейм из серии Criterion, который тоже можно исключить. Другие источники указывают, что фактической целевой платформой был либо сам NCR 7200, либо его преемник. Серия NCR 7500 была выпущена в 1978 году на основе аналогичного оборудования 8080, но теперь включает модели NCR 7520 и 7530 с 8-дюймовыми дискетами. NCR Basic +6, предшественник или адаптация Microsoft Standalone Disk BASIC-80, был доступен для них по крайней мере с 1979 года. Один источник утверждает, что специальный вариант модели NCR 7200 с двумя 8 Существовали дюймовые дискеты и Microsoft BASIC, и компания NCR Sydney импортировала их в Австралию меньше всего.
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-30 10:10:48
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте