Oversættere / Datalogi 1E



Relaterede dokumenter
Oversættere Skriftlig eksamen onsdag d. 19. april 2006

Oversættere Skriftlig eksamen onsdag d. 25. januar 2006

Oversættere Skriftlig eksamen onsdag d. 24. januar 2007

Oversættere. Vejledende løsninger til Skriftlig eksamen onsdag d. 20. april 2005

Oversættere Skriftlig eksamen onsdag d. 20. april 2005

Oversættere Vejledende løsninger til Skriftlig eksamen onsdag d. 24. januar 2007

Oversættere. Vejledende løsninger til Skriftlig eksamen onsdag d. 18. april 2007

DATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004

DATALOGI 1E. Skriftlig eksamen fredag den 7. juni 2002

DATALOGI 1E. Skriftlig eksamen fredag d. 16. januar 2004

DATALOGI 1E. Skriftlig eksamen mandag den 23. juni 2003

Oversættere. Vejledende løsninger til Skriftlig eksamen onsdag d. 25. januar 2006

DATALOGI MASKINARKITEKTUR Blok 2 samt Reeksamination i DATALOGI MASKINARKITEKTUR Blok 1 og arkitekturdelen af DATALOGI 1E

DATALOGI 1E. Vejledende løsninger til Skriftlig eksamen fredag den 7. juni 2002

DATALOGI MASKINARKITEKTUR

Skriftlig Eksamen Beregnelighed (DM517)

Eksamensopgaver i DM17, Januar 2003

DATALOGI 1E. Vejledende løsninger til Skriftlig eksamen mandag den 23. juni 2003

Sproget Six. Til brug i rapportopgaven på kurset Oversættere. Vinter Abstract

Skriftlig eksamen i Datalogi

Om at løse problemer En opgave-workshop Beregnelighed og kompleksitet

Åben uddannelse, Efterår 1996, Oversættere og køretidsomgivelser

EUX-eksamensreglement for Den Jydske Haandværkerskole

DATALOGI 1E. Vejledende løsninger til Skriftlig eksamen mandag den 28. maj min min min min.

DATALOGI 0GB. Skriftlig eksamen tirsdag den 6. januar 2004

Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528)

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

Yderligere udvidelser af oversætter for Minimal

På nedenstående billede skal du finde den figur som optræder nøjagtig 3 gange.

Sproget Rascal (v. 2)

Tæl og skriv hvor mange af hver figur som findes i billederne herunder. A = = = B = = =

Skriftlig eksamen i. Datalogi. Databaser. Sommer 2001

Tillæg til noter om rentestrukturteori

Kvantitative Metoder 1 - Efterår Dagens program

Radiografuddannelsen. Regler for prøver ved Radiografuddannelsen Tillæg til Studieordning. Marts 2015

Skriftlig Eksamen Algoritmer og Sandsynlighed (DM538)

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Denne rapport viser resultatet af jeres undersøgelse med de filtreringer, I har valgt, skal gælde for jeres udtræk.

Sproget Limba. Til brug i G1 og K1. Dat1E 2003

Rettelser til 2007 (rev. 2008) studieordningen for BA-Negot. i arabisk, engelsk, fransk, spansk eller tysk

Matematik C. Højere forberedelseseksamen

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Til 2hf ang. den større skriftlig opgave

DATALOGI 1E. Vejledende løsninger til Skriftlig eksamen torsdag den 16. januar 2003

Matematik B. Højere forberedelseseksamen

Matematik B. Studentereksamen

Version august 2012 Side 1 af 7

KØBENHAVNS UNIVERSITET NATURVIDENSKABELIG BACHELORUDDANNELSE

Barsel og løn ved barns sygdom. Privatansattes vilkår

FYSIK 3 / TERMODYNAMIK Københavns Universitet, 13. april, 2016, Skriftlig prøve

Borgerlige vælgere sender blå blok på bænken

Ældre sendes for tidligt hjem fra sygehusene

Kapitel 21: Softwarearkitektur designprincipper

Til 2hf ang. den større skriftlig opgave

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

Skriftlig Eksamen Algoritmer og sandsynlighed (DM538)

Appendiks 3 Beregneren - progression i de nationale matematiktest - Vejledning til brug af beregner af progression i matematik

Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel:

Om at gå til mundtlig eksamen en manual for studerende

Grønland. Matematik A. Højere teknisk eksamen

Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528)

Matematik B. Højere forberedelseseksamen

PRINCE2 Foundation Eksamensvejledning til kursister. 1 Din profil på eksamensportalen. 2 Eksamensformål. 3 Eksamensopbygning

Konstruktion af skalaer De numre, der står ud for de enkelte spørgsmål markerer de numre, spørgsmålene har i virksomhedsskemaet.

STUDENTEREKSAMEN MAJ AUGUST MATEMATIK B-NIVEAU. onsdag 12. august Kl STX092-MABx

Et udtryk på formena n kaldes en potens med grundtal a og eksponent n. Vi vil kun betragte potenser hvor grundtallet er positivt, altså a>0.

Øvelse 13 - Rente og inflation

GUX Matematik Niveau B prøveform b Vejledende sæt 2

Studieretningsprojektet i 3.g 2007

Matematik C. Højere forberedelseseksamen

Algoritmer og Datastrukturer 1

ROSKILDE TEKNISKE GYMNASIUM

Bilag D: Besvarelse af spørgeskemaundersøgelse, del 1

Eksempler på elevbesvarelser af gådedelen:

Effectiveness of Data

1 Program for forelæsningen

Matematik B. Studentereksamen

ANTI STRESS MANUAL 4 TRIN TIL AT KOMME STYRKET UD AF DIN STRESS

Fysisk aktivitet i den boglige undervisning

Sandheden om indkøbskurven

Denne rapport viser resultatet af jeres undersøgelse med de filtreringer, I har valgt, skal gælde for jeres udtræk.

Generelt er korrelationen mellem elevens samlede vurdering i forsøg 1 og forsøg 2 på 0,79.

Henvendelse til tilsynsførende Henvendelse skal ske ved at række hånden i vejret, og det er ikke tilladt at rejse sig, før der bliver givet lov.

Danmarks Tekniske Universitet

1 Opsumering fra tidligere. 2 Dagsorden 3 BIMS. 4 Programtilstande. Statements/kommandoer (Stm) i bims. 3.1 Abstrakt syntaks for bims

Denne rapport viser resultatet af jeres undersøgelse med de filtreringer, I har valgt, skal gælde for jeres udtræk.

Bilag E: Besvarelse af spørgeskemaundersøgelse, del 2

dcomnet-nr. 6 Talrepræsentation Computere og Netværk (dcomnet)

for matematik på C-niveau i stx og hf

Eksamensopgaver datalogi, dlc 2011 side 1/5. 1. Lodtrækningssystem

Djøfernes holdninger til barselsorlov og afskedigelsesvilka r

Syntaks og syntaksgenkendelse, særligt regulære udtryk og tilstandsmaskiner og lidt om anvendelser i bioinformatik

Det gyldne snit, forløb i 1. g

Regn med tallene. 1 Spil Væddeløbet. Du skal bruge Kuber. To terninger. Arbejdsark

Populationsbiologi. Skriftlig eksamen fredag d. 30. januar 2004, kl

Reeksamen i Calculus Torsdag den 16. august 2012

Farveskalaer anvendes til at præsentere positionsbestemte data (GPS-data) i farvelagte intervaller.

Det siger FOAs medlemmer om deres pension

To mikroarkitekturer til MIPS Karakteropgave på Maskinarkitektur 1B

Mål med faget: At gøre jer klar til eksamen, der er en mundtlig prøve på baggrund af et langt projekt

Transkript:

Københavns Universitet Naturvidenskabelig Embedseksamen Oversættere / Datalogi 1E Skriftlig eksamen onsdag d. 26. januar 2005 Eksamenstiden er to timer. Opgavernes vægt i procent er angivet ved hver opgave. Den skriftlige eksamen i Oversættere er bestået, hvis minimum 50% af opgaven er besvaret tilfredsstillende, eller en proportionalt større del er løst delvist tilfredsstillende. Hver opgaves vægt i procent er angivet ved opgavens start. Ligeledes er de enkelte spørgsmåls andel i denne vægt angivet. Opgavesættet bruges sammen med eksamen i Arkitektur også som deleksamen i reeksamen i Datalogi 1E. I dette tilfælde bedømmes de to besvarelser samlet efter 13-skalaen. Alle de sædvanlige hjælpemidler må benyttes, herunder også lydløse elektroniske lommeregnere og PDA ere (f.eks. Palm Pilot), dog ikke hvis disse har trådløs netadgang eller telefoni. En almindelig bærbar PC vil ikke være tilstrækkelig lydløs p.g.a. blæser, harddisk og støjende tastatur. I tvivlstilfælde gælder eksamensvagtens afgørelse. Det er tilladt at bruge blyant til besvarelsen, såfremt denne er tydeligt læselig.

Skriftlig eksamen onsdag d. 26. januar 2005 i Oversættere side 1 af 4 Opgave 1: Regulære udtryk (17%) Som angivet i afsnit 2.10 i Basics of Compiler Design, er regulære sprog lukket under præfiks. Det betyder, at der til ethvert regulært udtryk s findes mindst et regulært udtryk t, der genererer alle præfikser af tegnfølger, som s genererer. Spørgsmål 1.1 (5%) Givet at s er det regulære udtryk ab c, find et regulært udtryk t, sådan at t genererer alle præfikser af tegnfølger, som s genererer. Spørgsmål 1.2 (12%) Man kan definere en funktion prefix fra regulære udtryk til regulære udtryk, sådan at når t = prefix(s), så genererer t alle præfikser af tegnfølger, som s genererer. prefix(ab c) vil f.eks. således være en løsning til spørgsmål 1.1. prefix(s) kan laves som en rekursiv funktion over strukturen af det regulære udtryk s. Herunder er vist en ukomplet definition af denne funktion. Gør definitionen færdig ved at skrive de manglende højresider til de to sidste nedenstående regler. s og t er regulære udtryk, mens a repræsenterer et vilkårligt alfabetsymbol. prefix(ε) = ε prefix(a) = a? prefix(s t) = prefix(s) prefix(t) prefix(st) = prefix(s ) = Opgave 2: Syntaksanalyse (33%) Vi betragter gramatikken G: Spørgsmål 2.1 (5%) 1 T T T 2 T \ T 3 T num Vis at G er tvetydig, ved at finde en tegnfølge med to forskellige syntakstræer. Vis træerne.

Skriftlig eksamen onsdag d. 26. januar 2005 i Oversættere side 2 af 4 Spørgsmål 2.2 (5%) Find FIRST (T ) og FOLLOW(T ). Spørgsmål 2.3 (7%) Herunder er vist en delvis konstruktion af en SLR tabel for G: Vi udvider med en startproduktion: og laver NFA er for produktionerne: 0 T A B 1 T T C D E \ 2 T F G H num 3 I J 0 T T NFA erne udvides med epsilonovergange: A C D G ε Derefter bruges delmængdekonstruktionen til at lave en DFA: num \ T 0 A, s2 s3 g1 1 B, D, s2 s3 g4 2 J 3 G, s2 s3 g5 4 D, E, s2 s3 g4 5 D, H, s2 s3 g4 Gør konstruktionen færdig ved at indsætte reduce- og acceptaktioner i tabellen. Du behøver ikke at gentage mængden af NFA tilstande i den færdige tabel.

Skriftlig eksamen onsdag d. 26. januar 2005 i Oversættere side 3 af 4 Spørgsmål 2.4 (8%) Da grammatikken er tvetydig, er der konflikter i tabellen. Brug følgende præcedensregler til at fjerne konflikterne: Sammenstilling (som i produktion 1) binder stærkere end \. Sammenstilling er venstreassociativ. Spørgsmål 2.5 (8%) I spørgsmål 2.4 eliminerede vi tvetydigheden ved at fjerne konflikter i SLR tabellen. Et alternativ er at omskrive grammatikken, så den bliver entydig. Vis en entydig grammatik for sproget med samme præcedensregler som i spørgsmål 2.4, og vis syntakstræet for den tegnfølge, som du i spørgsmål 2.1 brugte til at vise, at den oprindelige grammatik er tvetydig. Opgave 3: Bootstrapping (18%) Du har følgende komponenter: a) En maskine, der kan køre x86 maskinkode. b) En compiler fra C til x86 maskinkode skrevet i x86 maskinkode. c) En fortolker for CAML bytekode skrevet i C. d) En compiler fra MosML til CAML bytekode skrevet i CAML bytekode. Spørgsmål 3.1 (4%) Vis Bratmandiagrammer (T-diagrammer) for hvert af komponenterne. Spørgsmål 3.2 (14%) Vis med Bratmandiagrammer, hvordan man givet ovenstående komponenter kan køre et program skrevet i MosML.

Skriftlig eksamen onsdag d. 26. januar 2005 i Oversættere side 4 af 4 Opgave 4: Kodegenerering og registerallokering (32%) Vi udvider mellemkodesproget fra Basics of Compiler Design (Grammar 6.1) med følgende betingede tildelingsinstruktioner: Instruction IF id relop Atom THEN id := Atom Instruction IF id relop Atom THEN id := unop Atom Instruction IF id relop Atom THEN id := id binop Atom Semantikken er, at tildelingen kun udføres, hvis betingelsen er sand. Vi ser i de følgende spørgsmål specielt på disse to eksempler på de nye mellemkodeinstruktioner: 1: IF x y THEN z := v 2: IF x<y THEN z := v+w Spørgsmål 4.1 (9%) Vis hvordan de to ovenstående instruktioner kan oversættes til sekvenser af MIPS instruktioner. Brug notation som i figur 7.1 i Basics of Compiler Design og brug kun MIPS instruktioner, der er brugt i denne figur. Hvis du bruger ekstra registre til mellemresultater, så kald dem t 1, t 2, osv. Forsøg at lave instruktionssekvenserne så korte som muligt. Spørgsmål 4.2 (8%) Vi udvider MIPS instruktionssættet med en betinget tildelingsinstruktion MOVC r d, r s, r t, hvis semantik er at r d tildeles r t s værdi, hvis r s 0, og ellers bevares uændret. Lav ligesom i spørgsmål 4.3 MIPS instruktionssekvenser for de to mellemkodeinstruktioner, men brug nu den nye MIPS instruktion til at gøre instruktionssekvenserne hopfri. Spørgsmål 4.3 (8%) Vis gen og kill for de to instruktioner på samme måde som i figur 8.1 i Basics of Compiler Design. Spørgsmål 4.4 (7%) Definitionen af interference (definition 8.2 i Basics of Compiler Design) bør modificeres for at tage højde for betingede tildelingsinstruktioner. Vis den modificerede definition. Vink: Ændringen kan afhænge af svaret på spørgsmål 4.3.