Algoritme noteren? Algoritmen voor de computer worden vastgelegd met behulp van een programmeertaal.

Maat: px
Weergave met pagina beginnen:

Download "Algoritme noteren? Algoritmen voor de computer worden vastgelegd met behulp van een programmeertaal."

Transcriptie

1 Programmeertalen

2 Algoritme noteren? Algoritmen voor de computer worden vastgelegd met behulp van een programmeertaal.

3 Taal // machine De geschiedenis van de programmeertalen loopt parallel met de geschiedenis van de computer. (zie presentatie: Geschiedenis van de computer)

4 Geschiedenis Lagere talen: Machinetaal Assembleertalen 1ste generatie 2de generatie Hogere talen: Hogere talen 4GL-talen 3de generatie 4de generatie

5 Machinetaal (1) Een computer werkt uiteindelijk puur binair: met 1 en en 0 en. Die 1 en 0 zijn symbolische voorstellingen voor de binaire toestanden die zich binnenin de computer kunnen voordoen: elektrische spanning <> geen spanning magnetisch geladen <> niet geladen gaatje <> geen gaatje lichtweerkaatsing <> geen weerkaatsing...

6 Machinetaal (2) Programmeren in machinetaal: puur binaire code in de computer invoeren. Elke instructie, elk geheugenadres en elke constante worden uitgedrukt door (gecodeerd met) acht bits: enorme reeksen enen en nullen. Zeer machine-afhankelijk. Men moet de machine door en door kennen. Moeilijk te begrijpen, wijzigen, fouten opsporen (=debuggen). Programmeur is verplicht in zeer kleine stapjes te denken.

7 Machinetaal (3) Oei, ik ben ergens een 1 tje vergeten

8 Assembleertalen (1) Voor elke instructie (in 1 en 0) bedacht men een codewoord van enkele letters LD 5000, 5 ; zet constante 5 op geheugenplaats 5000 LD 5001, 3 ; zet constante 3 op geheugenplaats 5001 DEC 5001 ; verlaag de inhoud van plaats 5001 met 1 A: MULT 5000, 5 ; vermenigvuldig de inhoud van plaats 5000 met 5 DEC 5001 ; verlaag de inhoud van plaats 5001 met 1 JPNZ 5001, A ; spring naar A als de inhoud van plaats 5001 niet 0 is HALT ;stop; het antwoord staat in geheugenplaats 5000 Commentaar

9 Assembleertalen (2) Speciaal programma nodig om die programma s in machinetaal om te zetten: assembler. Leesbaarder, gemakkelijker te verbeteren. Nog steeds zeer machine-afhankelijk.

10 Talen van hogere orde (1) (Bijna) onafhankelijk van de gebruikte machine. Leesbaar, gemakkelijk(?) te begrijpen en verbeteren. IF aantal > 50 THEN Messagebox.Show( Aantal is te groot ) ELSE Bestel(aantal) ENDIF

11 Talen van hogere orde (2) Grote verscheidenheid ADA ALGOL APL BASIC COBOL COMAL ELAN FORTRAN LOGO LISP RPG PASCAL DELPHI C JAVA...

12 4GL-talen Talen voor niet-programmeurs Volop in ontwikkeling

13 Ontwikkeling van mens past zich aan aan machine naar machine past zich aan aan mens van hoe? naar wat?

14 Compilers en interpreters (1) Programma s in hogere programmeertalen moeten in machinetaal worden omgezet, vertaald. Bronprogramma: programma in taal van hogere orde Doelprogramma: vertaling van bronprogramma in machinetaal

15 Compiler: Compilers en interpreters (2) het hele bronprogramma wordt in zijn geheel omgezet naar een bestand in binaire machinetaal (doelprogramma) doelprogramma kan daarna meermaals worden uitgevoerd snelle uitvoering fouten moeilijker op te sporen: waar gebeuren ze precies?

16 Compilers en interpreters (3) Interpreter: het programma wordt regel per regel omgezet naar machinetaal én uitgevoerd tragere uitvoering wegens tussentijdse vertaling er ontstaat nooit een volledig doelprogramma => bij elke nieuwe start moet er opnieuw vertaald worden

17 BASIC BASIC = Beginners All-Purpose Symbolic Instruction Code = Symbolische Instructie-taal voor alle doeleinden voor beginners Ontwikkeld in 1963/1964 door Thomas Kurtz en John Kemeny om studenten te leren programmeren

18 BASIC (2) In de jaren 70 ontwikkelden Bill Gates en Paul Allen een Basic-versie voor de populaire Altair personal computer Dat werd de basis voor hun latere GW- Basic van Microsoft In de loop der jaren verder ontwikkeld en aangepast

19 Visual Basic VB1 in 1991 gelanceerd door Microsoft onder de codenaam Thunder VB6 werd gelanceerd in 1998.

20 Visual Basic (2) Tool maken voor ontwikkelen van Windows-based toepassingen Koppeling met besturingssysteem Windows Gemakkelijke omgeving Krachtig, snel

21 Na VB6 Visual Basic.Net gebaseerd op het.net-framework, Spreek uit: dot net.

22 .Net Het.Net Framework is ontwikkeld als een soort 'uitbreiding' van het Windows besturingssysteem bedoeld voor programmeurs / ontwikkelaars. Het.Net-Framework bevat tienduizenden kant-en-klare objecten (eigenlijk klassen) die iedere programmeur kan gebruiken in zijn eigen programma.