Кіріспе

Microsoft BASIC – Microsoft компаниясының негізгі бағдарламалық өнімі және көптеген микрокомпьютерлерге бейімделген BASIC интерпретаторлары мен компиляторларының желісіне дамыды. Ол алғаш рет 1975 жылы Altair BASIC ретінде пайда болды, бұл Microsoft басып шығарған BASIC-тің алғашқы нұсқасы, сондай-ақ Altair 8800 микрокомпьютері үшін қолжетімді алғашқы жоғары деңгейдегі бағдарламалау тілі болды. 1970-ші жылдардың соңы мен 1980-ші жылдардың басында үй компьютерлері кең таралған кезде BASIC көптеген үй компьютерлерінің конструкциясына көшіріліп, олармен бірге жеткізілді. Машинаға тән функцияларды, әсіресе графиканы қолдау үшін енгізілген шағын өзгерістер Commodore BASIC және Atari Microsoft BASIC сияқты көптеген ұқсас конструкциялардың пайда болуына әкелді. Ертедегі үй компьютерлері IBM Personal Computer және Macintosh сияқты жаңа конструкцияларға ұшырағанда BASIC енді бұрынғыдай кеңінен қолданылмады, бірақ ол өзінің адал жанкүйерлерін сақтап қалды. Visual Basic-тің шығарылуы оның танымалдылығын қайта жаңғыртты және ол Microsoft Windows платформаларында ең соңғы нұсқасы – Visual Basic NET түрінде кеңінен қолданылады.

Altair BASIC және алғашқы микрокомпьютерлер

Altair BASIC интерпретаторы Microsoft негізін қалаушылар Пол Аллен мен Билл Гейтс PDP 10 миникомпьютерінде жұмыс істейтін Intel 8080 эмуляторының өздігінен жазылған нұсқасын пайдаланып жасады. MS диалектісі Гейтс орта мектепте қолданған PDP 11 компьютерінде Digital Equipment Corporation BASIC PLUS бағдарламасына негізделген. Алғашқы нұсқалар тек бүтін санды математиканы қолдады, бірақ Монте Дэвидофф оларды қозғалатын нүктелік арифметиканың мүмкін екендігіне көндірді және Microsoft бинарлық форматына айналған кітапхананы жазды. 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К-тан аспайтын немесе бастапқы 32 биттік нұсқаның орнына аралық 40 биттік қозғалатын нүкте форматын қолданатын нұсқасы үшін 9К-қа дейін ұлғайтылды. Бұл жаңа 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 соншалықты танымал болды ki, тіпті өздерінің BASIC-і бар компаниялар да оған лицензия алды, мысалы IBM өзінің жеке компьютері үшін, ал Atari – Atari Microsoft BASIC және өзінің Atari BASIC-ін сатты. IBM-нің Дон Эстриджі: «Microsoft BASIC-тің бүкіл әлемде жүздеген мың пайдаланушысы болды. Мұндай жағдайға қалай қарсы тұра аласыз?» Microsoft бір-бірімен бәсекелесетін компанияларға ұқсас нұсқаларды лицензиялады. Мысалы, IBM Advanced BASIC (BASICA) лицензиясын IBM-ге бергеннен кейін, Microsoft үйлесімді GW BASIC-ті PC клондарының өндірушілеріне лицензиялады және оның көшірмелерін бөлшек саудаға сатты. Компания VTech компаниясына оның Laser 128 клоны үшін Applesoft-қа үйлесімді BASIC лицензиясын да берді.

BASIC-80 дискісі

MBASIC CP/M 80 және ISIS II үшін қолжетімді. TEKDOS үшін де қолжетімді. MBASIC – аппараттық ерекшеліктеріне байланыссыз функциялары ғана бар BASIC 80-нің қысқартылған нұсқасы. Дегенмен, CP/M-нің кең таралғанына байланысты, Z80 машиналарының көп бөлігі нақты аппараттық құрылғыға арналған нұсқаның орнына MBASIC-ті пайдаланды (TRS 80 BASIC – сирек ерекшеліктердің бірі). Apple II үшін Microsoft CP/M картасы Applesoft BASIC-тен HPLOT сияқты графикалық командаларды қамтитын MBASIC-тің өңделген нұсқасын қамтыды, бірақ толық командалар жиынтығы қолдау көрсетілмеді.

TRS-80 II/III деңгейі BASIC

TRS-80 компьютері бастапқыда Ли Чен Вангтың Tiny BASIC (Level I BASIC) адаптациясымен ұсынылды; бірнеше айдан кейін ол Level I BASIC командалар жиынтығының бір бөлігін, әсіресе графикалық символдарды орнату командаларын қамтитын BASIC 80 портымен ауыстырылды. Level II BASIC кеңейтілген BASIC мүмкіндіктерінің бір бөлігін қамтыды, бірақ SET және PSET сияқты Level I командаларын қосу қажеттілігіне байланысты, егжей-тегжейлі қате хабарламалары сияқты басқа мүмкіндіктерді қосу мүмкін болмады; олар кейіннен TRS-80 Disk BASIC-ке қосылды. TRS-80 Model 4 BASIC 80 5.x ядросын пайдаланған жаңа дискілік BASIC-ке ие болды, ол 40 символдан тұратын айнымалы атауларды қолдады. Осылайша, кілт сөздер мен аргументтер арасында бос орындарсыз бағдарлама жолдарының қысқартылуы Level II-де болғандай енді мүмкін емес еді. Строкалар үшін орын резервтеудің қажеті болмады. Жаңа мүмкіндіктерге пайдаланушы анықтаған функциялар (DEF FN) және SYSTEM кілт сөзі арқылы TRSDOS 6 жүйелік функцияларына қол жеткізу кірді. Кейінірек операциялық жүйе провайдері Logical Systems шығарған өңделген нұсқа, LS DOS 6.3 жаңартуында BASIC басқару функцияларына (LIST және EDIT сияқты) бір әріппен қол жеткізу және LS DOS супервайзерлік шақыруларына тікелей қол жеткізу мүмкіндігі қосылды. Бағдарламаны өңдеу ортасы әлі де жолға бағдарланған күйде қалды. Level II-дегі массивтерді сұрыптау (CMD"O") мүмкіндігі болмады; бағдарламашылар мен пайдаланушылар өздерінің шешімдерін табуға мәжбүр болды.

BASIC-86 тілінде

Бірінші дербес дискідегі тіл жүйесі ретінде іске асырылған нұсқаулы машина 1979 жылы Seattle Computer Products компаниясының S 100 шинасымен үйлесімді 8086 процессорының картасы үшін жасалды. Ол 8 биттік FAT файлдық жүйені қолданды. Microsoft 1980 жылы Intel 8086 Single Board Computer платформасы үшін SBC 86/12 жиынтығына арналған Standalone BASIC 86 нұсқасын да ұсынды.

Texas Instruments BASIC компаниясының

Бұл TI 99/4A үй компьютерінде қолданылатын BASIC нұсқасы. Microsoft BASIC-ке өте ұқсас болғанымен, оны Microsoft жазған жоқ, бұл туралы көп айтылды. TI инженері Х. Шурманның сөзінше, "Олар (Microsoft компаниясының Боб Гринберг арқылы) SR 70 (кейде 99/7 деп те аталады) үшін BASIC әзірлеуге шарт жасасқан, бірақ 99/4 компьютері үшін BASIC компания ішінде жасалған". TI 99/4 BASIC Дартмут BASIC-ке негізделген және минималды BASIC (ANSI X3.60 1978) американдық ұлттық стандартына сәйкес келеді.

BASIC-68 және BASIC-69

Microsoft-тың 1980-ші жылдардағы каталогтарында FLEX операциялық жүйелерін қолдайтын Motorola 6800 және 6809 микропроцессорлары үшін BASIC 68 және BASIC 69 қолжетімді екені көрсетілген, сондай-ақ Perkin Elmer, Ohio Nuclear, Pertec және Societe Occitane d'Electronique жүйелеріне арналған OEM нұсқалары да аталып өткен. Бұл, екі Hitachi 6301 процессоры бар Epson HX 20 портативті компьютеріндегі Microsoft/Epson BASIC-тің негізі болған сияқты, олар негізінен "күшейтілген" 6801 процессорлары. BASIC 68 және BASIC 69-дың көптеген негізгі мүмкіндіктері BASIC 80-нен тікелей алынған. BASIC 69 сонымен қатар Tandy компаниясына лицензияланды, онда ол TRS 80 Color Computer-дегі Color BASIC-тің ядросын құрады. Оны Microware компаниясының OS 9 операциялық жүйесі үшін жасаған BASIC09-мен шатастырмау керек, ол Color Computer-де қолжетімді тағы бір операциялық жүйе (Microware сондай-ақ Microsoft бас тартқан кезде Extended Color BASIC 2.0 нұсқасын жазды). Microsoft BASIC сонымен қатар Уэльсте құрастырылған Dragon 32 / 64 компьютерлеріне де енгізілді және 1980-ші жылдардың басында Ұлыбританиядағы үй компьютерлері нарығында белгілі бір сәттілікке қол жеткізді. Dragon компьютерлері Tandy TRS 80 компьютерлерімен салыстырмалы түрде үйлесімді болды, себебі олар өте ұқсас аппараттық құралдармен жасалған.

MSX

Microsoft Z80 процессорын қолданатын MSX үй компьютерлері үшін MSX BASIC негізіндегі ROM шығарды. Бұл нұсқа 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 түйін сөз бар. Small Basic 1.0 нұсқасы (2011 жылдың 12 маусымы) жаңартылған Microsoft MSDN веб-сайтымен бірге, толық оқыту бағдарламасын, бастауға арналған нұсқаулықты және бірнеше электрондық кітаптарды қамтыды. Small Basic сегіз жастан бастап оқушыларға компьютерлік бағдарламалау негіздерін үйренуге көмектеседі, содан кейін Visual Studio Express бағдарламалық қамтамасы арқылы Visual Basic-ке өтуге мүмкіндік береді, онда олар Visual C#, VB.NET және Visual C++ тілдерін үйреніп, алған білімдерін дамыта алады.