Разработано | 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
Интерпретатор 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 клона.
Известные варианты:
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, но полный набор команд не поддерживается.
Первая реализация, в которой использовался 8-битный вариант таблицы размещения файлов, была адаптацией BASIC для Терминал ввода данных на базе Intel 8080 NCR 7200, 7520 или 7530 с 8-дюймовыми гибкими дисками в 1977/1978 гг.
Компьютер 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»), было недоступно; программисты и пользователи должны были изобретать свои собственные обходные пути.
Первая реализация в качестве автономной дисковой языковой системы была для Seattle Computer Products Bus S-100 Плата процессора 8086 в 1979. Он использовал 8-битную файловую систему FAT.
Microsoft также предложила версию Standalone BASIC-86 для SBC-86/12 для платформы Intel 8086 в 1980 году.
Это версия 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).
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 включают:
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 более полезным и удобным для пользователя:
Каталоги 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 отказалась это сделать).
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 ++.