Windows.  Virus.  Bärbara datorer.  Internet.  Kontor.  Verktyg.  Förare

BASIC programmeringsspråk -är en familj av programmeringsspråk på hög nivå. Ursprungligen utvecklat som ett läromedel, blev det utbrett på mikrodatorer i hemmet på 1980-talet, och är fortfarande populärt till denna dag i en mycket modifierad dialekt. Programmering för nybörjare.
Namnet på programmeringsspråket BASIC myntades i de klassiska traditionerna inom datavetenskap, vilket ledde till en bra förkortning av namnet, Beginner's All-purpose Symbolic Instruction Code (Multi-purpose Symbolic Instruction Code for Beginners). titeln på det opublicerade arbetet av uppfinnaren av språket, Thomas Kurz. Några kritiker lekfullt De kallar det Bills försök att ta kontroll över branschen som svar på Microsofts policy angående BASIC-tolken som ingick i alla tidiga IBM-kompatibla datorer. Programmering för dummies.

Berättelse

Innan framträdandet
Fram till mitten av 1960-talet var datorer mycket dyra verktyg som endast användes för särskilda ändamål på den tiden, de kunde bara göra ett "jobb". Från mitten av 1960-talet började dock datorer sjunka i pris, till den grad att även små företag hade råd, och inökade till den punkt där datorerna började stå stilla eftersom det inte fanns tillräckligt att göra dem, vilket sedan diskuterades i grunderna i programmering.
Tidens programmeringsspråk var typiskt utformade för att vara det datorer och för specifika ändamål, såsom vetenskaplig bearbetning av formler. Datorer som bara kunde göra ett "jobb" var dyra, och huvudkaraktär var hastigheten för genomförandet av instruktioner. Generellt sett var det svårt att använda dem, och man kan till och med säga lite "fult".
Det var under denna tid som konceptet med tidsdelning av ett operativsystem började bli populärt. I ett sådant system "kapade" datorn huvudbehandlingstiden i delar, och varje användare fick stort antal tid i en viss sekvens. Maskinerna var redan så snabba att de flesta användare lurades att tro att de monopoliserade hela datorn. I teorin om tidsdelning är det extremt viktigt att minska beräkningstiden eftersom hundratals användare kan arbeta på en enda dator, åtminstone i teorin.

Födelse och tidiga år
Programmeringsspråket BASIC uppfanns 1964 av John George Kemeny (1926-93) och Thomas Eugene Kurtz (1928 -) vid Dartmouth College. Under de följande åren, eftersom många varianter av BASIC dök upp, släpptes en beskrivning av den ursprungliga BASIC av Kemeny och Kurtz, som gav namnet till den nuvarande BASIC "Dartmouth BASIC".
Programmeringsspråket BASIC utvecklades för att låta eleverna skriva program med hjälp av datorterminaler på ett tidsdelningssätt. BASIC är utformad för att lösa komplexa problem som löstes av den tidigare generationens språk. Designad specifikt för en ny klass av användare som anammat idén om tidsdelning, det vill säga för den "enkla" användaren som inte var så mycket intresserad av hastighet som av användarvänligheten för datorn. Språkets utvecklare ville också att språket skulle bli en allmän egendom, vilket skulle hjälpa det att spridas.
Åtta principer för BASIC-konstruktion:

  1. Var lätt för nybörjare
  2. Att vara ett språk allmänt syfte
  3. Tillåt avancerade alternativ för experter att lägga till sina egna förbättringar (samtidigt som språket är enkelt för nybörjare)
  4. Var interaktiv
  5. Utveckla tydliga och vänliga felmeddelanden
  6. Svara snabbt på små program
  7. Inga datorhårdvarukunskaper krävs
  8. Skydda användaren från operativsystem

Språket baserades dels på Fortran II och dels på ALGOL 60, med tillägg för att göra det lämpligt för tidsdelning och matrisaritmetik, BASIC implementerades först på GE-265 manframes, som stödde flera terminaler. Tvärtemot vad många tror var det ett sammanställt språk vid tidpunkten för dess skapelse. Nästan omedelbart efter lanseringen började datorexperter håna BASIC som för långsam och för enkel. För att språkets elitism är ett återkommande tema i datorbranschen.
BASIC sprider sig dock till ett stort antal maskiner och blir ganska populärt på nya minidatorer som DEC PDP-serien och Data General Nova. I dessa fall tenderar språket att fungera som en översättare snarare än en kompilator, eller vice versa, beroende på behoven.

Explosiv tillväxt
Det var dock först med tillkomsten av Altair 8800-mikrodatorn 1975 som BASIC började spridas brett. De flesta programmeringsspråk var för stora för att passa in i det lilla minnet på de datorer som de flesta användare hade råd att köpa, och när man betänker att läsningen gjordes från ett långsamt pappersband (eller senare versioner av en ljudkassett) och det fanns inga lämpliga textredigerare, då uppfyllde de små kraven i BASIC-språket dessa krav väl. En av de första som dök upp på den här maskinen var Tiny BASIC, en enkel implementering av BASIC som ursprungligen skrevs av Dr Li-Wang Chen och sedan portades till Altair av Dennis Ellison på begäran av Bob Albrecht (som senare grundade Dr. Dobbs Journal - DDJ). Den Tiny BASIC-designen och den fullständiga källkoden publicerades 1976 av DDJ.
1977 släppte Microsoft (vid den tiden fanns det bara två personer - Gates och Allen) Altair BASIC. Versioner började sedan dyka upp på andra plattformar under licensen, och miljontals kopior och varianter användes snart och blev ett av standardspråken på Apple II. År 1979 förhandlade Microsoft med flera mikrodatorleverantörer, inklusive IBM, för att licensiera en BASIC-tolk för dessa datorer. Versionen hårdkodades till IBM PC-chips i ROM, och för datorer utan diskar laddades BASIC automatiskt när strömmen slogs på.
När nya företag dök upp försökte många efterlikna Altairs framgångar, som IMSAI, Polar Star och Apple, och därmed ägde en revolution rum. hemdator, där BASIC blev standardinslag i dåtidens hemdatorer. De flesta kom med en BASIC-tolk i ROM (en funktion som först dök upp på Commodore PET 1977). Snart fanns det många miljoner maskiner som körde BASIC över hela världen, förmodligen mycket fler än antalet användare av alla andra språk tillsammans. Många program, särskilt de på Apple II och IBM PC, blev beroende av Microsofts BASIC-tolk och fungerade inte utan den. Sålunda använde Microsoft upphovsrättslicensen för BASIC-översättare för att få inflytande i förhandlingar med datorleverantörer.

Mognad
Under denna tidsperiod skapades nya och kraftfullare versioner av BASIC. Microsoft sålde flera versioner av BASIC för MS-DOS/PCDOS inklusive BASICA, GW-BASIC (en BASICA-kompatibel version som inte krävde en IBM ROM) och Quick Basic. Borland Company (utvecklare) Turbo Pascal) publicerade Turbo Basic 1.0 1985 (en efterföljare till denna version säljs fortfarande under namnet PowerBASIC av ett annat företag). Olika tillägg dök upp för hemdatorn som BASIC stödde, till exempel grafik, ljud och DOS-kommandon, samt verktyg för strukturerad programmering. Andra programmeringsspråk har använt den välkända BASIC-syntaxen som grund för portering till andra operativsystem, såsom GRASS.
Men under andra hälften av 1980-talet var nya datorer mycket mer komplexa och hade många funktioner (som grafiska användargränssnitt), vilket gjorde BASIC mindre och mindre lämplig för programmering. Samtidigt utvecklas datorer från att vara ett verktyg för amatörer till att vara ett verktyg för proffs. Persondatorer börjar främst användas för att köra applikationer skrivna av andra människor, och programmering i allmänhet blir mindre viktigt för ett snabbt växande antal vanliga användare. BASIC började försvinna, även om många versioner förblev tillgängliga.
BASIC:s situation förändras med tillkomsten av Visual Basic från Microsoft. Även om det redan är ganska svårt att överväga klassisk BASIC på detta språk (trots användningen av välbekanta BASIC-ord i namnet), har detta nya blivit ett av de mest använda språken på Windows-plattformen. Låt oss inte glömma att nämna att program skrivna på detta språk representerar cirka 70 till 80 % av alla kommersiella applikationer. Visual Basic for Applications (VBA) har lagts till Microsoft Excel 5.0 1993 och ingick i hela Microsoft Office-produktlinjen 1997. Windows 98 introducerade VBScript-översättaren. Den senaste versionen av Visual Basic heter VB.NET. OpenOffice Suite innehåller en BASIC-variant som är mindre kraftfull än sin MS-motsvarighet.

Syntax
Operatören för logisk linjeavslutning är en ny linje, såvida inte en logisk radbrytningsoperator påträffas som använder ett linjefortsättningstecken. Minimal BASIC-syntax: LET, PRINT, IF och GOTO-kommandon. En tolk som kör ett program med denna minimala syntax behöver ingen stack eftersom vissa tidiga mikrodatorimplementationer var så enkla. Om du lägger till en stack kan loopar och GoSub-kommandon läggas till. BASIC-tolken behöver ha en radnummerkod för att fungera med dessa funktioner.
Radnummer var ett utmärkande drag för klassiska BASIC för hemdatorn. Tyvärr har användningen av radnummer en stor nackdel, vilket kräver att programmeraren har en instinkt för hur många rader det kommer att finnas i programmet, eftersom huvudlag det skedde en övergång till ett specifikt radnummer. Och om ändringar eller tillägg gjordes i senare versioner av programmet började numren på dessa rader att ändras, vilket ledde till att nästan hela programmet måste ändras. Att lösa detta problem listiga knep användes, som till exempel sa att rader skulle numreras med marginal och steget var +10. Men detta sparade fortfarande inte i händelse av allvarliga ändringar av programmet. För att lösa detta problem med tidiga BASIC-kompilatorer, erfarna användare skrev snart sina egna verktyg för omnumrering av rader med programkällkod. Vissa BASIC-översättare som kom senare hade ett inbyggt kommando för att ändra radnummer, och därmed eliminera det mest akuta problemet med radnummer.
Moderna BASIC-dialekter har övergett radnumrering, och de flesta implementeringar stöder strukturella kontrolloperatorer, som används i välkända språk som C eller Pascal, såväl som på andra språk som C och Pascal (även om det också finns versioner som kombinerar strukturell kontroll och linjenumrering):

  • gör - loop - medan - tills - avsluta
  • på x goto / gosub (switch & fodral)

Senaste varianter som Visual Basic har introducerat möjligheten till objektorienterad programmering, och till och med arv i den senaste versionen. Minneshantering i den senare implementeringen är mycket enklare än i många andra procedurprogrammeringsspråk på grund av det faktum att en skräpsamlare vanligtvis ingår (som rensar upp minnet i sig och tar bort onödig data).
Språkets mångfald av varianter visar att språket har en "organisk" karaktär och att språket kan betraktas som en subkultur i datorvärlden, snarare än som en fast uppsättning syntaktiska regler. Detsamma gäller andra "gamla" programmeringsspråk som COBOL och FORTRAN. Det enorma antalet proffs inom IT-branschen som talar BASIC kan förklaras av att majoriteten skar tänderna i programmering på 80-talet, åren av BASICs popularitet.

Rutiner och flödeskontroll
Basic har inte externa standardbibliotek som andra språk som C. Istället innehåller översättaren (eller kompilatorn) ett omfattande inbyggt bibliotek med sina egna procedurer. Dessa procedurer inkluderar de flesta verktyg som en programmerare måste lära sig att programmera och skriva med enkla applikationer, inklusive matematiska funktioner, inmatning och utmatning av strängar till konsolen, grafik och filbearbetning.
Vissa BASIC-dialekter tillåter inte programmerare att skriva sina egna procedurer. Programmerare bör istället skriva sina program med massor av GOTO-satser för förgrening. Detta kan bli väldigt förvirrande källkod, som vanligtvis kallas spagettikod. GoSub deklarerar enkla typer av subrutiner utan parametrar eller lokala variabler. De flesta moderna versioner av BASIC, som Microsoft QuickBASIC, har lagt till stöd för fullständiga rutiner och funktioner. Detta är ett annat område där detta språk skiljer sig från många andra programmeringsspråk. BASIC gör liksom Pascal en skillnad mellan procedurer som inte returnerar ett värde (kallas en subrutin) och procedurer som returnerar ett värde (kallad funktion). Många andra språk (särskilt C) gör ingen skillnad och kallar allt funktioner (även om vissa funktioner returnerar "null"-värden och är underprocedurer).

Datatyper
BASIC är välkänt för sina utmärkta strängbearbetningsmöjligheter. Redan i de första dialekterna fanns det många grundläggande funktioner (LEFT$, MID$, RIGHT$) för enkel strängbearbetning. Eftersom strängar ofta används i vardagliga applikationer var detta en betydande fördel jämfört med andra språk när språket introducerades.
Den ursprungliga Dartmouth BASIC stöder endast numeriska och strängdatatyper. Språket hade ingen heltalsdatatyp, istället var det tänkt att beskriva alla tal med flyttalvariabler (reell typ). Linjerna var av dynamisk längd. Matriser såväl som matriser (tvådimensionella matriser) stöddes.
Varje modern dialekt av BASIC har åtminstone heltals- och strängdatatyper. Datatyper skiljer sig vanligtvis enligt följande: strängidentifierare har en $ i slutet, men heltalsidentifierare har inte. I vissa dialekter måste variabler deklareras före den första användningen i andra dialekter, men det är möjligt att kontrollera om denna regel uppfylls genom att använda direktiv som Option Explicit. Många dialekter har också stöd för ytterligare typer, såsom 16- och 32-bitars heltal och flyttal. Dessutom låter vissa dig definiera anpassade datatyper, liknande Pascal "rekord" eller C "strukturer".
De flesta större dialekter stöder också arrayer av heltal eller andra typer. I vissa måste arrayer vara fördefinierade innan de kan användas (med en DIM-sats). Stöd för två- och flerdimensionella arrayer, såväl som arrayer av icke-heltalstyper, är vanligt.
DIM myIntArray (100) SOM HELTAL
DIM myNameList (50) SOM STRÄNG
Beroende på BASIC-dialekten och användningen av Option Base kan värdena variera från myIntArray (0) till myIntArr (100), från myIntArr (1) till myIntArr (100) eller från myIntArray (LowInteger) till myIntArray (HighInteger) , med andra ord talet det första elementet kan börja från noll eller från ett.

Relationell och logiska operatorer
= Lika
<= меньше или равно
inte logisk negation
<>Inte lika
>= större än eller lika med
och logisk multiplikation
< Меньше
eller logiskt tillägg
> Mer
(Observera att det inte finns någon lexikal skillnad mellan likhetsoperatorn och tilldelningsoperatorn i BASIC - det är tecknet "=")

Tillgänglighet och dialektalternativ
Basic är tillgängligt för nästan alla mikroprocessorplattformar. Det finns en gratis språktolk som är kompatibel med standarder och plattformsoberoende Bywater BASIC (bwBASIC). Tolken är skriven i C och är licensierad under GNU-licensen. Den är avsedd för programmets textkonsol och innehåller som sådan inte verktyg för att skapa GUI användare (GUI). En gratis BASIC som inte inkluderar en GUI Builder liknar Visual Basic och körs på Windows och Linux - Phoenix Object Basic.
De mest kända versionerna är den kompilerade versionen av Microsoft Quick BASIC och QBASIC-versionen, som inte producerar fristående program. Vissa versioner av Visual Basic kan också kompilera till maskinkod. Microsoft har bibehållit minimal kompatibilitet i Visual Basic även med tidigare versioner.
Andra versioner inkluderar PowerBASIC-programmeringsspråket från PowerBASIC Company, samt True BASIC från True BASIC Company, som är kompatibla med de senaste officiella standarderna för BASIC. True BASIC grundades av en av skaparna av Dartmouth BASIC.
REALbasic är ett alternativ för Apple Macintosh, som också skapar körbara filer För Microsoft Windows. PureBasic är ett alternativ med enkel syntax, men som producerar snabba och små körbara filer för Windows och Linux. SmallBASIC är en dialekt som körs på många plattformar (Win32, DOS, Linux och PalmOS) och är licensierad under GNU-licensen (GPL).

Mål med lektionen:

    Introducera eleverna till grunderna i BASIC-språket. Kontrollera dina kunskaper från föregående lektion. Utveckla förmågan att lyssna på läraren. Utveckling av kognitivt intresse.

Lektionsplan:

Kollar läxor. Förklaring av nytt material. Grundläggande språkbegrepp Läxor. Sammanfattning av lektionen.

Lektionens framsteg

Kollar läxor.

Att sätta mål för lektionen.

Förklaring av nytt material.

Det grundläggande programmeringsspråket skapades 1964 av två professorer vid Dartmun University, John Kenemy och Thomas Kurtz. BASIC är de första bokstäverna i engelska ord Nybörjarens allsidiga symboliska instruktionskod (All-purpose programmeringsspråk för nybörjare För närvarande finns det många versioner av detta språk, som ibland skiljer sig mycket från varandra för utbildningsinstitutioner vanliga är MSX-versionerna , som först implementerades på den japanska Yamaha-datorn, och Microsoft-versionen för IBM-datorer. Dessutom är Borland-versionen av Turbo-Basic populär i vårt land utbrett programmeringsspråk sedan tillkomsten av kraftfulla kompilatorer, har detta språk också blivit populärt bland professionella programmerare. Liksom andra språk har detta språk ett alfabet, syntax och semantik.

Språkets alfabet. Det grundläggande språkalfabetet är en tabell med ASCII-tecken. Den första halvan av denna tabell (tecken med kod 0-127) är standard. Den andra halvan (tecken kodade 128-255) är specifik för varje land. I den här tabellen har varje tecken en 8-bitars beteckning. Så, det grundläggande språkalfabetet inkluderar allt kapital och versaler Engelska och ryska alfabet, siffror, samt en uppsättning specialtecken, som finns på datorns tangentbord.

Variabler. I BASIC särskiljs följande typer av variabler:

    numeriska variabler; teckenvariabler; användartypvariabler (poster); arrayvariabler.

En variabel är en kvantitet som kan ändras under programkörning. Utöver de som anges i tabellen skrivs heltal även i exponentiell notation, till exempel,

2.55.105=2.55E5; 7.15.10-7=7.15E-7

Ett BASIC-program behandlar två typer av data – numerisk och symbolisk. Varje nummer representeras i maskinen av någon kombination av bitar. Vilket nummer som helst kan representeras i en maskin på olika sätt:

Ett heltal i intervallet –32768 till 32768; långt heltal i intervallet från – till; reella tal med vanlig precision; dubbel precision reella tal;

Data kan representeras av variabler och konstanter.

Variabler. Du är redan bekant med begreppet variabel från algebralektioner. Till exempel i en enkel algebraisk likhet c = f + 2b – 5 menande variabel med beror på värdet av variablerna f och b som anges på höger sida av likheten. Till exempel när f=2 Och b=6, c=9 .

Samma jämställdhet kan skrivas i ett BASIC-program.

c = f + 2*b – 5

När det gäller BASIC-språket c ,f Och b är variabelnamn. Sådana namn kallas också identifierare.

Identifierare. I BASIC-språket är en identifierare en godtycklig uppsättning tecken som kan innehålla från 1 till 40 tecken, där det första tecknet måste vara en latinsk bokstav och resten - latinska bokstäver eller siffror eller symboler som @, #, % och. etc.

Exempel :

A, Ds, SodRan, k1, n123, dlina!

Typen av identifierare i BASIC identifieras av det sista tecknet i variabelnamnet.

% - heltal;
& är ett långt heltal;
! – verkligt antal av vanlig precision;
# - dubbel precision reellt tal;
$ är en teckentyp.

BASIC tillhandahåller ett annat sätt att beskriva variabeltyper (qbasic). Om du i början av programmet placerar kommandot: DEFINT I – L, kommer alla variabler vars namn börjar med bokstaven I och ligger i intervallet upp till bokstaven L att betraktas som heltal (INTEGER).

Det allmänna formatet för typbeskrivningskommandot är:

DEFINT X-X (heltal) DEFLNG X-X (långa långa heltal) DEFSNG X-X (reella tal med enkel precision) DEFDBL X-X (dubbla reella tal med dubbla precision) DEFSTR X-X (typ av teckensträng)

Konstanter. Konstanter, både numeriska och symboliska, är kvantiteter som inte ändras under programexekveringen.

Till exempel:

p = 3,1415
T$= “Skorodnya School”
A=9575
m$="Veckoschema"

Ibland kallas de skrivna konstanterna bokstavliga ord. När det gäller konstanter måste du komma ihåg reglerna:

Separatorn mellan heltals- och bråkdelen är en punkt; Värdena på teckenkonstanter är omgivna av citattecken.

Siffror kan skrivas in exponentiell form, till exempel:

0,0285=2,85E-2 eller 0,0285=2,85D-2
784,527=7,84E+2
eller 784.527=7.84D+2

Tal skrivna i exponentiell form är produkten av mantissan i en storleksordning, d.v.s. med 10 i potensen –2, +2, etc. Bokstaven E används för reella tal med vanlig precision, bokstaven D används för reella tal med dubbel precision.

Namngivna konstanter. Om du tilldelar en variabel ett värde (numeriskt eller symboliskt) och inte ändrar dessa värden i framtiden, till exempel:

F3=60, n%=15

KONST <имя_переменной = константа, имя переменной = константе>

Till exempel: CONST F2=60, n%=15

Uttryck och operationer. Sekvensen av operationer som måste utföras på data för att erhålla det önskade värdet anropas uttryck. Det finns fem kategorier av operationer i BASIC:

Aritmetiska operationer; Relationsverksamhet; Logiska operationer; Funktionella operationer; Strängoperationer.

Aritmetiska operationer.

Operationens namn

tecken
i matte.

logga in BASIC

Exempel i
matematiker

Exempel i
GRUNDLÄGGANDE

Exponentiering

-

^

25

2^5

Tillägg

+

+

5+10

5+10

Subtraktion

-

-

a-b

a-b

Multiplikation

x; .

*

2.5

2*5

Division

:

/

10:2

10/2

Operationer av relationer.

Fungeraär en fördefinierad operation på data. Det finns två typer av funktioner i BASIC: inbyggda och användardefinierade.

Inbyggda matematiska funktioner

Funktionsnamn

Att skriva i matematik

Inspelning i BASIC

Exempel i BASIC

Absolut värde

Utställare

Logaritm naturlig

Heltalsdivision resterande (MOD)

19 MOD 6.7

Kvadratrot

Sinus

SIN(3,14)

Cosinus

Tangent

Arctangens

Numeriskt uttryck tecken

Alla andra trigonometriska funktioner, såväl som hyperboliska funktioner, bestäms av välkända matematiska formler, till exempel, ARCSIN(X)=ATN(X/SQR(1-X^2)) .

Vid problemlösning används mycket ofta ytterligare två funktioner.

1.RND(1)- en slumptalsgenerator som ställer in slumptal från 0 till 1.

Exempel:

Uppsättning slumpmässiga siffror från 1 till 100. (Naturligt tal).

N=(RND(1)*100+1)

2. INT(numeriskt uttryck)- den här funktionen kasserar bråkdelen vid division av tal.

Exempel:

I det första exemplet är det nödvändigt att talen N från 1 till 100 är naturliga tal.

N=INT(RND(1)*100+1)

Användarfunktion.

I de fall funktionen inte är elementär, eller funktionen har flera argument, är det bekvämt att använda en användarfunktion: DEF FN. Funktionsnamnet måste alltid börja med bokstäverna FN. DEF FN kan inte vara rekursivt (kan inte anropa sig själv) och måste definieras före användaren.

Exempel:

Låt X och Y vara naturliga tal. R är resten av X dividerat med Y. Uttryck R(X, Y) - R är en funktion av X och Y.

R=X - INT(X/Y)*Y - återstoden av divisionen X Y
DEF FN R(X, Y)=X-Y*INT(X/Y)

I detta exempel R(X, Y) - funktion av två argument.

Skriva matematiska uttryck i BASIC.

Alla matematiska uttryck i BASIC skrivs som en sträng. För att utvärdera detta uttryck, skriv bara PRINT eller?

Kalkylera:

https://pandia.ru/text/78/020/images/image003_37.gif" alt="Formel" width="121" height="42 src=">!}

PRINT (SIN(47*PI/180)-COS(78*PI/180)^2)/(EXP(1.5)-SIN(13*PI/180))

Skriv följande uttryck i BASIC:

  • Windows utveckling
  • ÅSNA.BAS. Inkluderade med IBM PC 1981. Medförfattare av Bill Gates

    Namnet BASIC dök upp som en förkortning för "Beginner's All-purpose Symbolic Instruction Code", som bokstavligen betyder "ett multifunktionellt språk med symboliska kommandon för nybörjare." Nyckelfunktion BASIC var inte bara dess enkelhet, utan också förmågan att hitta lösningar på problem i dialog med datorn.

    För många datorer i slutet av 1960-talet var BASIC positionerat som det enda allmänna programmeringsspråket på hög nivå, och med tiden ledde detta till att olika modifieringar av det dök upp. En vändpunkt i utvecklingen av språket var framväxten av Visual Basic.

    Bakgrund

    I mitten av 50-talet började programmeringens roll i maskinkoder att minska. Språk på högre nivå dök upp - Fortran, Algol, Cobol och så vidare.

    Den första av dem och en av de mest spridda var FORTRAN (FORTRAN, från Formula TRANslator - formelöversättare), utvecklad av en grupp IBM-programmerare 1954 (första versionen). Detta språk var inriktat på vetenskapliga och tekniska beräkningar av matematisk karaktär.

    Namnet på Algol-språket (ALGOrithmic Language), vars första version dök upp 1958, betonar det faktum att det är avsett för att skriva algoritmer. Tack vare sin tydliga logiska struktur har Algol blivit standardmedel inspelningsalgoritmer i vetenskaplig och teknisk litteratur.

    På den tiden präglades högnivåprogrammeringsspråk av ämnesorientering. Dessutom var sådana språk för komplexa för nybörjare, särskilt om de inte var ingenjörer. Därför är det naturligt att det med tiden dök upp ett programmeringsspråk för "bara dödliga".

    GRUNDLÄGGANDE. Bara BASIC

    Idén att skapa detta programmeringsspråk är förknippad med en välkänd berättelse om en engelsk missionär.
    På 1800-talet kom en engelsk missionär, som letade efter en möjlighet att underlätta och förenkla kontakten med de infödda, på en briljant idé - att från det engelska språket isolera den enklaste delen av den, som praktiskt taget saknar grammatik och innehåller cirka 300 av de vanligaste orden. Denna avskalade undertyp av engelska kallades BASIC ENGLISH, och som praxis har visat, visade det sig verkligen vara väldigt lätt att lära sig och blev snart populärt inte bara bland den infödda befolkningen, utan även bland invandrare för vilka engelska inte var deras modersmål.
    Hundra år senare valde medlemmar av matematikavdelningen vid Dartmouth College en liknande väg. De bestämde sig för att underlätta interaktionen mellan en dator och en icke-professionell användare med hjälp av ett "förenklat" programmeringsspråk.

    1964 skapade Thomas Kurtz och John Kameny ett specialiserat programmeringsspråk som bestod av enkla ord engelska språket. Det nya språket kallades BASIC.

    De använde den för att lära eleverna programmeringsfärdigheter. Språket visade sig vara så enkelt och förståeligt att det efter en tid började användas i andra läroanstalter.

    Fortran II och Algol 60 hade ett allvarligt inflytande på BASIC. Dessutom implementerade utvecklarna mekanismer för tidsdelningssystem, såväl som textbearbetning och matrisaritmetik. Språkkompilatorn skrevs ursprungligen för GE-265 stordator.

    Glanstid

    På 70-talet var det fler kompakta datorer(PC). Denna omständighet användes framgångsrikt av Bill Gates och Paul Allen, grundarna av Microsoft.

    De skapade en ny version av BASIC för de första Altair-datorerna (MITS Altair), som kan köras i 4KB RAM. Med tiden var det denna version som förvandlades till ett av de mest populära programmeringsspråken i världen.


    Altair

    Perioden med störst välstånd och utveckling av den ursprungliga BASIC kan betraktas som slutet av 1970-talet - första hälften av 1980-talet. Dess versioner dök upp på andra plattformar och började snart sälja miljontals exemplar med alla möjliga ändringar och modifieringar. En av de mest populära versionerna var Applesoft BASIC, som blev standardspråket på Apple II.

    Applesoft BASIC skrevs av Microsoft som en ersättning för Integer BASIC-systemet som användes i det allra första Apple-modeller II och hade mycket begränsad kapacitet. Applesoft BASIC flashades in i ROM-minnet på alla Apple II-modeller, från och med Apple II+ och alla Apple II-kloner. Dessutom fanns en tidigare och avskalad version av Applesoft BASIC på kassettband för den allra första Apple II-modellen.

    För CP/M-operativsystemet skapades dialekten BASIC-80, som under lång tid bestämde språkets utveckling.

    När dök de första upp? persondatorer IBM PC, det var denna som blev standarden inom programmering, men i form av GW-Basic.

    I mitten av 1980-talet blev BASIC huvudspråket i komplexa modeller av programmerbara miniräknare, som just vid det här laget hade nått den kraft som kunde användas fullt språk hög nivå. BASIC byggdes in i den sovjetiska Elektronika MK-85-kalkylatorn och alla dess senare modeller.

    Även 1985 dök IDE Quick Basic upp - en integrerad utvecklingsmiljö och kompilator för programmeringsspråket BASIC, utvecklat av Microsoft från 1985 till 1988. Det fanns versioner för DOS och Mac OS. Den BASIC-dialekt som användes baserades på den förbättrade GW-BASIC-dialekten: stöd för användartyper, strukturerade programmeringskonstruktioner implementerades och stöd för grafiska och diskoperationer utökades avsevärt.

    Robert "Bob" Zeil skapade Turbo Basic 1987 baserat på hans mångåriga utveckling av BASIC/Z, och sålde den sedan till Borland. Magasinet Infoworld utsåg den till en av de mest betydelsefulla produkterna under det året.

    Till skillnad från de flesta BASIC-implementeringar under perioden var Turbo Basic en komplett kompilator som genererade inbyggd kod för MS-DOS.

    Trots det stora antalet versioner av BASIC-språket vid utveckling ny version språket har alltid upprätthållit kompatibilitet med tidigare versioner: med ett program skrivet för tidigare versioner var det fullt möjligt (ibland med mindre ändringar) att fungera i efterföljande versioner av detta språk.

    Andra livet

    I början av 90-talet dök operativsystemet Microsoft Windows upp med ett nytt grafiskt användargränssnitt.

    Att skapa ett enkelt program, var utvecklare tvungna att skriva flera sidor med kod: skriva stora block med kod för menyer och fönster, typsnitt, rensa minne, "rita"-knappar, etc. Fördelarna med det nya gränssnittet var dock ganska starka, och Windows hade verkliga utsikter att bli populärt överallt.

    Microsoft förstod att det var nödvändigt att på något sätt göra livet lättare för utvecklare. Därför lanserade företaget flera parallella projekt för att skapa ett nytt programmeringsspråk och utvecklingsmiljö för Windows.

    BASIC fick ett andra liv när Microsoft släppte Visual Basic. Det blev den logiska slutsatsen av utvecklingen av språket och, trots bevarandet av de vanliga nyckelorden, var det i struktur och uppsättning möjligheter närmare Pascal än den ursprungliga BASIC.

    1991 dök den första versionen av den nya Microsoft Visual Basic IDE upp. Men i det ögonblicket bedömde Microsoft ganska blygsamt funktionerna i detta system, och riktade det fortfarande mot kategorin nybörjare och icke-professionella programmerare.

    Detta var förstås bara det första steget, eftersom Bill Gates företag planerade att stärka Windows position på marknaden. Och detta skulle vara mycket svårt att göra, vilket skulle lämna kommersiella utvecklare utan effektiva verktyg för att skapa applikationer för MS Windows.

    Programmeringssystemet skapat av Visual Basic-utvecklarna gjorde det möjligt att abstrahera från den interna strukturen i Windows. Menyer, fönster, listor, knappar, textinmatningsfält och andra Windows-gränssnittselement lades till programmet med enkla dra-och-släpp-operationer, och det mesta av koden för att initiera och konfigurera dem genererades automatiskt.

    VB-programmerare kunde skapa sitt första program inom några minuter efter att ha börjat lära sig detta språk. Dessutom tillät Visual Basic utvecklare att skapa nya grafiska gränssnittselement som också kunde användas i program tillsammans med standard.

    Trots att många C-utvecklare inte tog Microsofts försök att göra ett enkelt och begripligt Windows-utvecklingsverktyg på allvar hade andra inom IT-communityt stora förhoppningar på Visual Basic.

    1994 släppte företaget Visual Basic for Applications. Det var vid denna tidpunkt, efter införandet av VBA i Microsoft Office, Basic blev en av de viktigaste programmeringsstandarderna för Windows.

    Ursprungligen tänkt som en leksak tog Microsofts Visual Basic programmeringsvärlden med storm. Dess popularitet beror på två skäl: relativ enkelhet och produktivitet.

    VB-program var långsammare än sina C/C++-motsvarigheter, men de var fortfarande tillräckligt snabba för många affärsändamål och krävde mycket mindre utvecklingstid. Formulär var samma ansträngningsbesparande abstraktion som VB erbjöd Windows-programmerare.

    VB IDE gjorde det möjligt att designa fönster grafiskt genom att dra kontroller som knappar och listrutor från verktygsfältet till ett formulär. Efter att ha fått en tillfredsställande utseende formulär kan du gå in i koddelen och skriva händelsehanterare för varje formulärkontroll.

    Att utveckla en applikation i VB bestod alltså av att skapa flera former som interagerade med varandra.

    Ur synvinkel att skriva kod var en viktig skillnad från samma C++ att pekare övergavs. Detta är vad Bill Gates bestämde under utvecklingen av den första Microsoft versioner GRUNDLÄGGANDE. Även om pekare är användbara eftersom de tillåter direkt åtkomst till minnet på vilken adress som helst, är deras användning benägen att fel om de inte används försiktigt. Och eftersom språket ursprungligen skapades för "bara dödliga" verkar detta beslut helt berättigat.

    Huvudversioner av Visual Basic

    I den första versionen (1991) implementerade Alan Cooper principen att koppla ihop språket och det grafiska gränssnittet.

    Från och med den tredje versionen (1993) lade VB till stöd för MS Access.

    Visual Basic 4.0 (1995) - en version där det blev möjligt att skapa både 32- och 16-bitars Windows-applikationer. Dessutom lades klasser till språket.

    Från och med VB 5.0 (1997) blev det möjligt att utveckla egna COM-komponenter. Dessutom finns en ny virtuell maskin, implementerad i det dynamiska biblioteket MSVBVM50.DLL. VB-kompilatorn använde multipass-läge för översättning, men förlitade sig i slutändan på Microsoft C++-kompilatorn för att producera maskinkod efter kompilering till ett mellanspråk. Använda runtime-biblioteket och internt gränssnitt C++ var utgångspunkten för bildandet av .NET-teknik.

    VB version 6 är redan ett kraftfullt språk som kan användas för att skapa distribuerade applikationer med hjälp av COM-komponenter och Microsoft Transaction Server. Microsoft har föreslagit ett tillvägagångssätt i tre nivåer för klient-serverarkitekturer, där tunna användargränssnitt interagerat med fjärranslutna VB-komponenter för att hämta data från en databas eller en annan maskin.

    Dessutom kan VB6 (1998) användas för att skapa Active-X-kontroller som fungerar med Internet Explorer.

    2002 dök den första versionen av Visual Basic .NET upp. Från denna tidpunkt var bakåtkompatibiliteten med den klassiska versionen av Visual Basic bruten.

    Sedan 2005 har Visual Basic varit en del av Microsoft Visual Studio 2005 IDE Än idag utvecklas språket tillsammans med IDE - ända fram till nuvarande version– MS Visual Studio 2015.

    Språken Basic och Visual Basic har kommit långt och har genomgått betydande, kan man säga, oåterkalleliga förändringar. Lite återstår av deras ursprungliga enkelhet. Som ett resultat har VB blivit ett "vanligt" objektorienterat programmeringsspråk på hög nivå.

    Programmeringsspråkens historia känner till många exempel på verkliga revolutioner inom programmering. Historien om programmeringsspråket BASIC är just det. Från ett litet, lite använt språk för inlärning har det vuxit till en sann standard för nästan alla programmeringsspråk.

    Programmeringsspråket BASIC utvecklades av Thomas Kurtz och John Kenemy 1964 med målet att lära eleverna grunderna i programmering. Språket visade sig vara enkelt, begripligt, med ett ganska enkelt gränssnitt. Målet för utvecklarna var tydligt: ​​de behövde ett enkelt programmeringsspråk som skulle vara tillgängligt samtidigt. Här är de viktigaste bestämmelserna som BASICs "fäder" tog hänsyn till:

    1) Lätt att använda;

    2) Massdeltagande;

    3) Informationsinnehåll;

    4) Språket måste stödja förmågan att spåra och eliminera fel;

    5) Språket bör inte kräva seriös hårdvarukunskap;

    6) Programmeringsspråket måste bli länken mellan användaren och operativsystemet.

    Som ett resultat började det användas i många andra utbildningsinstitutioner. Elva år senare, när världen översvämmades av miljontals nya mikrodatorer, blev BASIC-programmeringsspråket intressant för Bill Gates och Paul Allen, männen som skapade Microsoft. Det var de som, genom att gå samman, förbättrade en version av BASIC för sina egna som kunde fungera även med 4kb RAM (!).

    Efter en tid var det deras version som blev ett av de mest använda och populära programmeringsspråken. Under bildandet av programmeringsspråket BASIC gjordes det ofta försök att stänga programmet, många ville hitta brister och uppnå avskaffandet av användningen av detta språk. Men med tillkomsten av BASIC blev det det huvudsakliga programmeringsspråket som andra vägleddes av. Det är värt att notera att det redan hette GW-basic. Då dök det upp turbo basic från Borland och Quick Basic. Alla versioner som utvecklades senare var nödvändigtvis skrivna på ett sådant sätt att de bibehåller kompatibiliteten med de tidigare. Även den senaste versionen av detta programmeringsspråk fungerar med den allra första, med mindre justeringar.

    Och nu har Microsofts era anlänt. Tidigt 90-tal: operationssal windows system erövrade nästan hela marknaden programvara, alla var glada över att se henne, alla utom programmerarna. Deras liv blev ett helvete. För att skapa de mest vanliga, enkla fönstren var det nödvändigt att skriva ett hav av sidor med kod, ändra skrivteckensnitt och slutligen "rita" nya knappar. Men vi måste erkänna att det hade mycket fler fördelar än nackdelar, och i slutändan blev den tredje versionen av operativsystemet världsstandarden för datorer.

    Det fanns ett behov av att modifiera BASIC. Således blev BASIC-programmeringsspråket känt som Microsoft Visual Basic. Inget var ännu känt om företagets omfattande planer, och utvecklarna fokuserade nytt språk programmering främst för icke-professionella. Programmeringssystemet implementerat i Visual Basic gjorde det möjligt att ta sig bort från den tunga strukturen i Windows och skapa program bra nivå, som inte har det största kunskapsbeståndet. Den sista spiken i kistan, som praktiskt taget begravde andra ganska bra typer av programmeringsspråk som Fortran och Pascal, var utvecklingen av en version av BASIC för applikationer.

    För närvarande är programmeringsspråket BASIC så populärt att nästan alla programmerare med självrespekt känner till och använder det. Jag skulle vilja notera att den används i applikationer som t.ex microsoft office Och internet explorer. Men kanske ett av de viktigaste tillämpningsområdena, BASIC-programmeringsspråket, som tas emot i utvecklingen och konfigureringen av applikationer i .NET-miljön. Dessutom öppnar den senaste utvecklingen från Bill Gates företag, Microsoft C++, upp ett enormt utbud av möjligheter för användarna, och allt detta tack vare två professorer från Dartmouth College.

    på vilka de användes var utformade för att användas av utbildade tekniska specialister och programmerare. Eftersom maskiner var dyra var datortid också dyr - därför kom hastigheten på programexekveringen (räknehastigheten) först.

    Men under 1960-talet började datorpriserna falla så att även små företag hade råd; deras prestanda ökade och tiden kom då det blev möjligt att organisera mer effektivt direkt arbete för användare med datorer i ett tidsdelningsläge ( tidsdelning).

    Födelse

    Höjd

    Även om språket redan hade använts på flera minidatorer började dess verkliga spridning med att det dök upp på Altair 8800-mikrodatorn. Många programmeringsspråk var för stora för att passa in i det lilla minne som användare av sådana maskiner hade råd med. För maskiner med långsam media som papperstejp (senare ljudkassett) och utan en lämplig textredigerare Ett så litet språk som BASIC var ett fantastiskt fynd.

    BASIC används i vissa modeller av programmerbara miniräknare. Till exempel var den inbyggd i den sovjetiska kalkylatorn "Electronics MK-85".

    Beskrivning

    Språkets syntax påminner om Fortran och många element är tydligt lånade från det. Språket var designat för inlärning, så dess strukturer är så enkla som möjligt. Som i andra programmeringsspråk är nyckelord hämtade från det engelska språket. Det finns två huvuddatatyper: strängar och siffror. Med tillkomsten av Visual Basic, såväl som dess olika modifieringar (som VBA), introducerade språket många andra datatyper och tillägg som är typiska för moderna programmeringsspråk (till exempel som t.ex. objektmodell). Att deklarera variabler kräver ingen speciell sektion (till skillnad från till exempel Pascal). Att deklarera en variabel är första gången den används.

    Tidiga versioner av BASIC (som BASICA, GW-BASIC) skiljer sig markant från moderna dialekter och används praktiskt taget inte idag.

    Tidiga versioner

    Utseende av program på tidigare versioner BASIC bestämdes till stor del av att den var avsedd för en programmeringsmiljö med en radtextredigerare. I en sådan editor hade användaren inte möjlighet att visa all text på skärmen (i ett fönster), eller flytta runt den i någon riktning med hjälp av tangentbordet och/eller musen. I radredigerare, för att ändra en textrad, måste användaren ge kommandot att ändra raden med ett givet nummer och sedan ange ny text för den angivna raden. För att infoga en ny rad måste du ge kommandot infoga och återigen ange numret. De angivna raderna visas på skärmen sekventiellt (oavsett siffror). För att se ändringarna som gjorts, använd textutmatningskommandot, som visar raderna i rätt ordning (i stigande ordning).

    Allt detta återspeglades i BASIC. Varje rad började med ett nummer. När den skrevs in i editorn dök raden upp i programmets källtext på den position som motsvarar dess nummer. För att infoga en ny rad var man tvungen att lägga till en rad med ett nummer som låg i intervallet mellan numren på de andra två raderna. Det var omöjligt att "sprida" rader om du behövde infoga en ny rad mellan rader med intilliggande siffror, var du tvungen att skriva in dessa rader med olika nummer för att säkerställa ett avbrott i numreringen (eller använda det speciella RENUM-kommandot, som numrerade om alla redan inmatade rader med ett konstant steg, och ändrade synkront alla hoppkommandon). För att förenkla den operativa redigeringen av programmet utvecklades en praxis för att numrera rader i steg om 10 - detta gjorde det möjligt i nästan alla fall att infoga nya rader utan att ändra numren på tidigare inmatade. Till exempel, för att lägga till en tredje rad mellan raderna 20 och 30, skulle du behöva skriva rad nummer 25. En typisk rad från ett BASIC-program skulle se ut så här:

    10 SKRIV UT "Hej världen!"

    Det var osäkert att manuellt ändra numren på befintliga rader, eftersom siffrorna fungerade som etiketter för GOTO-satsen. Tidigare tillät BASIC endast numeriska etiketter för denna operatör, och närvaron av ett unikt nummer på varje rad gjorde det möjligt att hoppa villkorslöst till någon av dem. Siffermärken och aktiv användning GOTO var oundvikligt i BASIC programmering, vilket bidrog till dålig kodstruktur och i stora projekt ledde till förvirring för författarna själva. Den humoristiska termen "spaghettiprogrammering" (spagettikod) myntades till och med eftersom logiken i ett program med frekventa GOTO-övergångar liknar en tallrik spagetti.

    Slutet på uttalandet indikerades i slutet av raden. För att placera flera operatorer på en rad måste du sätta ett kolon mellan dem (detta var inte tillåtet i alla implementeringar av språket). Variabelnamn i de flesta dialekter kunde bestå av endast en bokstav, varefter man kunde lägga till en siffra, vilket inte heller bidrog till att förbättra förståelsen av koden. För att skapa en variabel av strängtyp var du tvungen att ange ett dollartecken ($) efter namnet. En variabel utan detta tecken var numerisk (flytande komma). Det fanns flera fler modifierare relaterade till den numeriska typen: procenttecken (%) - heltalstyp, utropstecken (!) - normal precision, octotorpe (#) - dubbel precision (för flyttalsdata, det vill säga bråktal). Numeriska modifierare användes inte i alla versioner.

    Uttryck liknar de flesta andra procedurprogrammeringsspråk, men i de första versionerna av BASIC var deras uppsättning ganska dålig.

    Den villkorliga operatorn (IF..THEN) hade från början bara en gren - ELSE-grenen saknades i den och modellerades med ett ovillkorligt hopp. Så i följande program utförs en elementär operation - anger ett nummer och visar meddelandet "Negativt nummer" eller "Positivt nummer eller noll" beroende på dess värde:

    10 INPUT I 20 IF I >= 0 SKRIV DÅ UT "Positivt nummer eller noll" : GÅ TILL 40 30 SKRIV UT "Negativt tal" 40 END

    Det fanns en beräkningsetikettoperator ON..GOTO (ärvd från en liknande Fortran-konstruktion) - i den, efter ON, indikerades ett numeriskt uttryck, och efter GOTO, en lista med radnummer. Övergången skedde till den rad vars nummer i listan motsvarade uttryckets värde. Det finns också loopar (en loop med FOR-räknare och en loop med WHILE-förutsättning).

    Användningen av användardefinierade funktioner (återanvändbara delar av kod) var möjlig på två sätt: definierade funktioner och subrutiner.

    Subrutiner var inte analoger till funktioner i språk som C eller Pascal, eftersom de inte hade namn och inte kunde acceptera och/eller returnera parametrar. Parametrar och resultat skickades genom globala variabler (alla variabler i tidiga versioner av BASIC var globala). Subrutiner skrevs vanligtvis i slutet av en modul, med numrering uppenbarligen större än det planerade antalet rader (till exempel kunde numreringen av ett block av subrutiner börja på 5000, även om programmet hade ett par hundra rader). Subrutiner hade inga rubriker eller namn och skilde sig inte från någon annan kod. Subrutinen kallades för att använda nyckelord GOSUB<метка>. Detta är praktiskt taget en klon av GOTO, med undantag för en sak: återgången till anropspunkten skedde automatiskt när RETURN-nyckelordet nåddes i subrutinen. GOSUB, liksom GOTO, bidrar bara till dålig kodstruktur genom att göra det möjligt att spåra exekveringen av ett program som innehåller ett stort antal ovillkorliga hopp och rutiner, var en utmanande uppgift.

    Oförmågan att namnge subrutiner (och överföra kontroll över dem), oförmågan att skicka parametrar, frånvaron av lokala variabler och användningen av endast numeriska etiketter i stora projekt orsakade förvirring i koden och gjorde felsökningen mycket svår.

    I vissa BASIC-dialekter var det möjligt att ladda en fil med kod direkt under programkörningen (den nuvarande laddades ur) med CHAIN-operatorn. Detta var en av de mest användbara funktionerna i språket, eftersom det tillät dig att dela upp ett stort projekt i moduler, kalla dem i den ordning du behöver.

    Kritik

    BASIC har kritiserats hårt för det faktum att dess enkelhet och bristande struktur uppmuntrar till dåliga programmeringstekniker och vanor som kan vara lämpliga för att skapa små program, men som kan leda till att stora projekt misslyckas.

    Ett av Edsger Dijkstras "telefonkort" var uttalandet: " Det är nästan omöjligt att lära ut bra programmering till studenter som tidigare har läst BASIC. Som potentiella programmerare drabbades de av oåterkallelig mental nedbrytning».

    Dessutom ignorerar kritiker av BASIC ofta det faktum att det inte skapades som ett verktyg för professionell utveckling av komplexa program, utan som ett sätt med vilket icke-programmerande studenter kunde skriva enkla program. Om vi ​​pratar om moderna dialekter och implementeringar av BASIC, har de flyttat sig långt från den ursprungliga formen av språket, är mer strukturerade och är jämförbara i kapacitet med språk som C, Pascal, etc.

    Tillverkare

    Vid olika tidpunkter producerades BASIC-tolkar av olika organisationer, företag, företag:

    Övergångsvis Procedurmässigt Objekt Mobil

    Basic4ppc GLBasic NS Basic



    Om du upptäcker ett fel markerar du ett textstycke och trycker på Ctrl+Enter
    DELA: