必威电竞|足球世界杯竞猜平台

gw-basic
來源:互聯(lián)網(wǎng)

GW-BASIC是高級(jí)程序設(shè)計(jì)語言BASIC的一個(gè)方言版本。關(guān)于GW的含義,目前有三種說法,一種認(rèn)為是以微軟早期程序員Greg Whitten的名字命名的,一種認(rèn)為是用微軟創(chuàng)始人的名字Gates,William命名的,還有一種說法是開發(fā)人員給它取的一個(gè)戲稱gee-whiz(兩個(gè)英語的象聲詞,類似于漢語中吆喝牲口的聲音)。有一點(diǎn)是肯定的,這個(gè)版本的BASIC最早是微軟為康柏電腦開發(fā)的,時(shí)間應(yīng)該是在1984年,這一年11月,微軟,這一年11月,微軟首次為IBM之外的計(jì)算機(jī)廠商提供OEM版本的DOS,GW-BASIC是作為MS-DOS的一個(gè)組成部分問世的。首次為IBM之外的計(jì)算機(jī)廠商提供OEM版本的DOS,GW-BASIC是作為MS-DOS的一個(gè)組成部分問世的。

歷史地位

Basic的發(fā)展經(jīng)歷了三個(gè)階段:

非結(jié)構(gòu)化Basic語言,如:gw-Basic、MS Basic

結(jié)構(gòu)化Basic語言,如:True Basic、Turbo Basic、Quick Basic

面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,即Visual Basic

gw-basic屬于非結(jié)構(gòu)化basic,也就是最早期的basic語言,沒有l(wèi)oop和while循環(huán)語句,局限性很大。

特性

GW-BASIC和微軟提供給IBM PC的BASICA完全兼容,所不同的是,后者依賴于ROM中的BASIC解釋器,而前者并不需要,所以,GW-BASIC能在眾多IBM PC兼容機(jī)上運(yùn)行,這就使它的使用范圍隨著PC兼容機(jī)的推廣而擴(kuò)大。第一個(gè)流傳范圍較廣的GW-BASIC版本號(hào)為2.0,而最后推出的GW-BASIC版本號(hào)為3.23,時(shí)間大概是1988年。從那時(shí)起,如果沒有特殊說明,我們一般所說的GW-BASIC就是指的這個(gè)版本。

GW-BASIC運(yùn)行速度較慢,這在很大程度上是因?yàn)樗且环N交互式的開發(fā)工具——這種開發(fā)模式是BASIC的誕生地Dartmouth大學(xué)最早提出的。和很多早期的BASIC方言一樣,GW-BASIC缺乏很多進(jìn)行結(jié)構(gòu)化編程所需的語法成分,但是它足夠靈活,此外還擁有很多繪圖語句和一些簡單的發(fā)聲語句,這就足以使一個(gè)程序員用它開發(fā)一個(gè)簡單的游戲軟件、商用軟件或者諸如此類的東西。它能夠在絕大多數(shù)PC上運(yùn)行,這就給那些想要成為程序員的人提供了一個(gè)學(xué)習(xí)如何編程的廉價(jià)的途徑。

語法

GW-BASIC擁有一個(gè)簡單的集成開發(fā)環(huán)境(IDE),所有的程序行都必須有一個(gè)行號(hào),沒有行號(hào)的語句被認(rèn)為是需要立即執(zhí)行的命令。用戶界面中,除屏幕底部的功能快捷鍵描述和頂部的版權(quán)聲明外,其他部分都用來顯示和編寫語句。源文件標(biāo)準(zhǔn)的保存格式是GW-BASIC特有的二進(jìn)制壓縮格式,不過它也提供了一個(gè)選項(xiàng),使得開發(fā)者可以用ASCII文本文件格式保存源文件。GW-BASIC的IDE提供了如下常用命令:RUN(執(zhí)行當(dāng)前源代碼),LOAD(從磁盤裝入源代碼),SAVE(把源代碼保存到磁盤),LIST(顯示已打開的源文件內(nèi)容),SYSTEM(返回操作系統(tǒng))。它們都可以出現(xiàn)在源程序代碼行上,不過除SYSTEM外,上述用法還相當(dāng)少見。

前面提到,GW-BASIC對(duì)結(jié)構(gòu)化程序設(shè)計(jì)方法的支持非常差,所以對(duì)GW-BASIC程序員來講,能夠用它寫出具備良好結(jié)構(gòu)的程序是很大的提高。在GW-BASIC里,IF/THEN/ELSE條件語句必須在一行內(nèi)寫完,盡管WHILE/WEND已允許包含多行代碼;自定義函數(shù)只能用類似于DEF FNf(x) = <關(guān)于x的數(shù)學(xué)函數(shù)> 這樣形式的一行語句來編寫(例如,DEF FNLOG(base,number)=LOG(number)/LOG(base));變量通常是通過變量名末端的一個(gè)表示類型的符號(hào)來確定其類型的:A$表示是一個(gè)字符串,A%表示是一個(gè)整型數(shù),等等;通過使用DEFINT,DEFSTR等關(guān)鍵字,可以為一組使用相同首字母的變量定義缺省類型;其他變量其類型默認(rèn)是單精度浮點(diǎn)數(shù)

很多GW-BASIC程序員都是沒有經(jīng)過訓(xùn)練的,他們往往看不到編寫結(jié)構(gòu)簡單的程序所能帶來的好處,因此就導(dǎo)致濫用GOTO語句的現(xiàn)象,他們往往不愿意使用能完成同樣功能的結(jié)構(gòu)化的語句。參見面條式代碼。

GW-BASIC支持游戲操縱桿和光筆輸入設(shè)備,但不支持鼠標(biāo)。它能夠讀寫磁盤文件、LPT端口和COM端口,也能處理端口事件陷阱,不過不能處理磁帶設(shè)備。它還能通過使用PLAY語句或SOUND語句來驅(qū)動(dòng)IBM PC及其兼容機(jī)的標(biāo)準(zhǔn)內(nèi)置揚(yáng)聲器發(fā)出聲音。

參考資料 >

生活家百科家居網(wǎng)