De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

1 SOCS Hoofdstuk 3 Basisprogrammatuur. 2 Inhoud De Vertaler De Voorvertaler De Lader De Binder De Vertolker  Werking van vertolker  Voor- en nadelen.

Verwante presentaties


Presentatie over: "1 SOCS Hoofdstuk 3 Basisprogrammatuur. 2 Inhoud De Vertaler De Voorvertaler De Lader De Binder De Vertolker  Werking van vertolker  Voor- en nadelen."— Transcript van de presentatie:

1 1 SOCS Hoofdstuk 3 Basisprogrammatuur

2 2 Inhoud De Vertaler De Voorvertaler De Lader De Binder De Vertolker  Werking van vertolker  Voor- en nadelen  Toepassingen Het Speurprogramma Het Opstarten van de Computer

3 3 RAM Vertaling en Uitvoering HIA R0,A DRU OPT R0,B DRU STP A:10000 B:20000 Vertale r 1131000005 7299999999 2131000006 7299999999 9999999999 0000010000 0000020000 LaderVertalingsfaze Uitvoeringsfaze 1131000005 7299999999 2131000006 7299999999 9999999999 0000010000 0000020000

4 4 Vertolker HIA R0,A DRU OPT R0,B DRU STP A:10000 B:20000 Vertolke r 10000 30000 Engels: Interpreter Interpretatie = Vertaling + Uitvoering

5 5 Werking van een Vertolker Eerste Vertolkers  Lijn per lijn inlezen:  Vertaal  Voer uit HIA R0,50 BIG R0,60 …  Lees bevel  Vertaal  Berg in 0000  Voer uit (SPR 0000) 0000 5000 0001 … … 3221900000 … Vertolker

6 6 Werking van een Vertolker Eerste Vertolkers  Lijn per lijn inlezen:  Vertaal  Voer uit HIA R0,50 BIG R0,60 …  Lees bevel  Vertaal  Berg in 0000  Voer uit (SPR 0000) 0000 5000 0001 … … 3221900000 … Vertolker

7 7 Werking van een Vertolker Eerste Vertolkers  Lijn per lijn inlezen:  Vertaal  Voer uit HIA R0,50 BIG R0,60 …  Lees bevel  Vertaal  Berg in 0000  Voer uit (SPR 0000) 0000 5000 0001 … … 3221900000 … Vertolker 3221905000 1131000050  HIA R0,50 Deel v/h te vertolken programma  SPR 5000

8 8 Werking van een Vertolker Eerste Vertolkers  Lijn per lijn inlezen:  Vertaal  Voer uit HIA R0,50 BIG R0,60 …  HIA R0,50  SPR 5000  Lees bevel  Vertaal  Berg in 0000  Voer uit (SPR 0000) 0000 5000 0001 … … 3221900000 … Vertolker 3221905000 1131000050 Deel v/h te vertolken programma3221905000 1131000050 3221900000

9 9 Werking van een Vertolker Eerste Vertolkers  Lijn per lijn inlezen:  Vertaal  Voer uit HIA R0,50 BIG R0,60 …  HIA R0,50  SPR 5000  Lees bevel  Vertaal  Berg in 0000  Voer uit (SPR 0000) 0000 5000 0001 … … 3221900000 … Vertolker 3221905000 1131000050 Deel v/h te vertolken programma3221900000 Enzovoort

10 10 Werking van een Vertolker Twee programma’s door elkaar uitgevoerd  Stukje van de vertolker  Stukje van het te vertolken programma  Geen interferentie! Toepassing:  Niet bij LPT  Reeds vertaalde programma nodig  Rekenen met bevelen  Machinetaal (DRAMA, Java Bytecode, …)  Hogere programmeertaal (C, Pascal, Perl, …)

11 11 Vertolker voor vertaalde programma’s Waarom?  Programma is vertaald voor een doelcomputer  Uitvoeren op gastcomputer  Machinetaal doelcomputer  machinetaal gastcomputer

12 12 Vertolker voor vertaalde programma’s Oplossing:  Vertaalprogramma  Machinetaal1  Machinetaal2  Soms geen tegenhanger, geen indexatie, geen auto-increment, …  Voorbeeld: JIT-compilator (Java Bytecode)  Vertolker (simulator)  Gedrag doelcomputer nabootsen op gastcomputer  Voorbeelden: DRAMA-simulator, JVM, …

13 13 Vertolker voor hogere programmeertaal Verschil met LPT:  Niet rekenen met bevelen  Variabelen via toekenning initiële waarde Voorbeeld: b = 3 * a; Inlezen Analyseren (lexicaal, syntactisch, semantisch) Simuleren HIA R0,A VER.w R0,3 BIG R0,B Uitvoering: 3 instructiesUitvoering: 10-tallen instructies

14 14 Voordelen Gemakkelijker te schrijven dan compilator Minder geheugenruimte nodig Zinvolle foutenboodschappen  a = b / c; // c == 0 Machine-instructies niet kennen  Vertolker zelf geschreven in HPT  Kan uitgevoerd worden op elke machine waarvoor een vertaler beschikbaar is

15 15 Nadelen Uitvoering duurt langer  Deel werk van vertaler overdoen  Interpretatie vergt meer instructies  Niet erg tijdens ontwikkeling van programma  Programmalus  Telkens opnieuw analyseren … Uitvoeringstijd vertolking  Vertalingstijd + Uitvoeringstijd vertaalde programma Productiefaze:  Tijd uitsparen door vertalen

16 16 Optimisaties Programma omzetten naar intermediaire code  Eenvoudiger te analyseren/interpreteren Programma-fragmenten (lussen) vertalen  Geen (her)interpretatie nodig

17 17 Toepassingen Nieuwe programmeertaal  Vertolker in conventionele HPT Talen van zeer hoog niveau  Permanent door vertolker  Wat (I.p.v. Hoe)  Bron-instructie  zeer veel machinebevelen  Poly-algoritmes  Vertaaltijd << Uitvoeringstijd  Voorbeeld: APL Dynamische programmeertalen  Voorbeeld: LISP  Manipuleren van lijsten (programma = zelf ook lijst)

18 18 Toepassingen Simulator  Voor programma in machinetaal  Bijv. om conversieproblemen tijdelijk op te lossen Emulator  Gastcomputer aanpassen zodat hij zich gedraagt zoals de doelcomputer  Simulator omzetten naar micro-code  Invoer/uitvoer = moeilijkste om te emuleren Computer waarvan machinecode = HPT  Pascal-machine, LISP-machine  Vertolker voor die taal naar micro-code omzetten

19 19 Cursustekst Hoofdstuk 3: pag. 78  pag. 84


Download ppt "1 SOCS Hoofdstuk 3 Basisprogrammatuur. 2 Inhoud De Vertaler De Voorvertaler De Lader De Binder De Vertolker  Werking van vertolker  Voor- en nadelen."

Verwante presentaties


Ads door Google