BASIC edo Beginner's All-purpose Symbolic Instruction Code (Hasiberrientzako helburu guztietarako instrukzioen kode sinbolikoa) maila altuko programazio lengoaia familia bat da. Erabilterraza zen lengoaia bat izateko asmoz sortu zen, 1964an. Baina 1980ko hamarkadan zabaldu zen bere erabilera batez ere eta gaur egun, beronen aldaera ugari ditugu gure artean.

BASIC
AtariBasic.png
Jatorria
Sorrera-urtea1964
Ezaugarriak
Programazio paradigmanon-structured programming (en) Itzuli, Programazio inperatibo, procedural programming (en) Itzuli eta Objektuetara bideratutako programazioa
Deskribapena
Honen eragina jaso duFORTRAN, FORTRAN II (en) Itzuli, JOSS (en) Itzuli eta ALGOL
Ekoizpena
DiseinatzaileaJohn George Kemeny
GaratzaileaThomas Eugene Kurtz (en) Itzuli, John George Kemeny eta Mary Kenneth Keller

BASIC lengoaiak izugarrizko ospea izan zuen, bi inplementaziori esker batez ere, Tiny BASIC eta Microsoft BASIC, eta mikroordenagailu edo mikrokonputagailuen lehen lengoaia bihurtu zen. Garrantzi handiko beste inplementazioen artean, hauek dira aipagarrienak: CBASIC (BASIC konpilatua), Integer eta Applesoft BASIC (Apple II-rentzat), GW-BASIC (konputagailu pertsonalentzat), Turbo BASIC (Borland) eta Microsoft QuickBASIC.

BASIC lengoaiak aldaketak izan ditu urteak joan ahala. Horrela, aurreneko bertsioak interpretatuak ziren, ez egituratuak. Azkenekoak, berriz, egituratuak dira, eta sarritan, baita konpilatuak ere. BASIC izan da urte askotan zehar programatzaile hasiberriek ikasten duten lehen lengoaia, erabilerraza eta ulerterraza delako, eta beste lengoaia zailago batzuen oinarrizko kontzeptu berdinak dituelako.

BASICen bilakaeran funtsezkoa izan zen Microsoften Visual Basic (VB) lengoaiaren sorrera. Lengoaiaren ohiko gako-hitz guztiak erabili arren (sententziak, kontrol-egiturak eta barne-funtzioak), datu-motak eta haien maneiua barne; VB askoz ere ahaltsuagoa eta eboluzionatuagoa da; Windows plataformatan gehien erabiltzen den lengoaietako bat izanik, aplikazio komertzialetan nagusitasuna izatera iritsiz.

Atari BASICen idatzitako adibide bat.

EzaugarriakAldatu

SintaxiaAldatu

BASICeko gutxieneko sintaxiak LET, INPUT, PRINT, IF eta GOTO komandoak baino ez ditu barneratzen. Gutxieneko sintaxi hori duten programak egiten dituen interpretzaileak ez du pilarik behar. Lehen inplementazioetako batzuek horren sinpleak ziren. Pila bat gehitzen bazaio interpretatzaileari, habiatutako FOR begiztak eta GOSUB komandoa ere gehitu daitezke. Ezaugarri horiek dituen BASIC interpretatzaileak linea-zenbakiak behar ditu kodean.

Linea zenbakiak BASIC klasikoaren oso alderdi bereizgarria izan ziren. Hala ere, linea-zenbakiak erabiltzeak badu desabantaila bat: programatzaileak jakin behar du zenbat linea erabiliko dituen. Hori saihets daiteke tarte erregular bat barneratuz lerro jarraien artean (10 esaterako).

BASICeko bertsio berrietan ez da beharrezkoa lerro zenbakiak jartzea, onartzen diren arren, zeren eta gehienetan bloke egituratuak barneratu diren C eta Pascal lengoaien ildotik:

  • do
  • loop
  • while
  • until
  • exit
  • on... goto
  • gosub
  • select ... case

Interpretatzaile gehienetan ere REM (remark) komandoa eskaintzen da oharrak jartzeko, baina helburu bera lortzen da ' (komatxo sinplea) sinboloa erabiliz. Visual Basic bezalako bertsio berrietan objektuetara bideratutako lengoaietako ezaugarriak barneratu dira.

AdibideakAldatu

Kaixo mundua adibidea:Aldatu

10 print "Kaixo, mundua!"

Jatorrizko BASIC ez-egituratua (Applesoft BASIC)Aldatu

 10 INPUT "Zein da zure izena?:"; NN$
 20 PRINT "Ongi etorri 'Puztarri-zalera',";NN$
 25 PRINT
 30 INPUT "Zenbat puztarri hasteko?:"; N
 40 IF N<=0 THEN GOTO 200
 50 AS$=""
 60 FOR I=1 TO N
 70   AS$=AS$+"*"
 80 NEXT I
 90 PRINT "Hemen dituzu:"; AS$
100 INPUT "Puztarri gehiago?:";SN$
110 IF SN$="" THEN GOTO 100
120 IF SN$<>"S" OR SN$<>"s" THEN GOTO 200
130 INPUT "Zenbat aldiz errepikatuta:"; ALDIAK
140 IF ALDIAK<=0 THEN GOTO 200
150 FOR I=1 TO ALDIAK
160   PRINT AS$;
170 NEXT I
180 PRINT
185 REM Bloke osoa errepikatzera (oharra)
190 GOTO 25
200 END

BASIC egituratua, aurrekoaren baliokidea (Quick BASIC)Aldatu

   DEFINT I-N        'I eta N arteko hizkiez hasitako aldagaiak zenbaki osoak
   iTrue = -1        'Egiazkoa adierazteko Flag-a
   INPUT "Zein da zure izena?:"; Izena$
   PRINT "Ongi etorri 'Puztarri-zalera',"; Izena$
   DO
      PRINT ""
      INPUT "Zenbat puztarri hasteko?:"; N
      IF N<=0 THEN EXIT DO
      Segida$ = ""
      FOR I=1 TO N
         Segida$=Segida$ + "*"
      NEXT I
     PRINT "Hemen dituzu:"; Segida$
      DO
         INPUT "Jarraitu nahi?";SN$
      LOOP UNTIL SN$<>""
      IF SN$<>"B" OR SN$<>"b" THEN EXIT DO      'Begiztatik irten
      INPUT "Zenbat aldiz errepikatuta::";iAldiak
      IF iAldiak<=0 THEN EXIT DO                'Begiztatik irten
      FOR I = 1 TO iAldiak
         PRINT Segida$;
      NEXT I
      PRINT
   LOOP WHILE iTrue
   END

Ikus, gaineraAldatu

ErreferentziakAldatu

Kanpo estekakAldatu