Eksamen dcomnet Q2/2010. Navn



Relaterede dokumenter
Eksamen dcomnet 2012Q4. Årskortsnummer Navn

Eksamen dcomnet Q2/2012. Studiekortsnummer Navn

Niveauer af abstrakte maskiner

Mikroprogrammering. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet

Computerarkitektur Eksamen 2014Q3. Niels Olof Bouvin. Studienummer Navn

Eksamen Computerarkitektur 2013Q4. Niels Olof Bouvin. Studienummer Navn

Computerarkitektur Eksamen 2014Q2. Niels Olof Bouvin A. Studienummer Navn

Maskinarkitektur. Lars Kristensen Christian Storm dmasark 1

Computere og Netværk (dcomnet)

Pentium IA-32 Maskinarkitekturen

Mikroarkitektur. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet

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

dcomnet-nr. 8 Simpel aritmetik på maskinniveau Computere og Netværk (dcomnet)

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal

Lageret i maskinarkitekturen. Beregningsenhed, lagre (registre, RAM, disk), ydre enheder

Grundlæggende Algoritmer og Datastrukturer. Analyseværktøjer [CLRS, 1-3.1]

Algoritmer og Datastrukturer 1

CPUer og maskinkode DM534. Rolf Fagerberg

DM13-1. Obligatoriske Opgave - Kredsløbs design

uprocessorens hardware

Intel Core i7. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet

Operativsystemer - dopsys

DATALOGI MASKINARKITEKTUR

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

Boolsk algebra For IT studerende

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

Boolsk algebra For IT studerende

Introduktion til Computerarkitektur. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet

Niveauer af abstrakte maskiner

Algoritmer og invarianter

Operativsystemer - dopsys. Erik Ernst

Lageradministration. dopsys

QoS. - prioritering af pakketransporten! Netteknik 1

VLAN, Trunk & VTP. VLAN: Virtual Local Area Network

Bits DM534. Rolf Fagerberg, 2012

Computerarkitektur. - en introduktion til computerarkitektur med LINDA

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

INGENIØRHØJSKOLEN I ÅRHUS Elektro- og IKT-afdelingen. I3PRG3 + I3DTM3 + I3ISY1-3. semester

DM13-3. Obligatorisk opgave E.05 Håndoptimering af SPARC assembler-kode

Sider og segmenter. dopsys 1

Projekt Træningsmaskine

Grådige algoritmer. Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Niveauer af abstrakte maskiner

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

DM13-1. Obligatorisk opgave E.05. Jacob Aae Mikkelsen

Sider og segmenter. dopsys 1

BRP Tal. Om computer-repræsentation og -manipulation. Logaritmer

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

Rolf Fagerberg. Forår 2013

Netværksalgoritmer 1

Arduino Programmering

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

Rolf Fagerberg. Forår 2012

Maskinsprog. Martin Zachariasen, DIKU. Programmer og ordrer. Ordretyper. Operander og deres placering. Ordreformat. Procedurekald. Andre arkitekturer

I3PRG3+I3DTM3+I3ISY1-3. semester

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 2

Grundlæggende køretidsanalyse af algoritmer

NETVÆRKSKURSUS Oktober November jmt

Introduktion til programmering. Af mikroprocessor Atmel ATmega328P i en Arduino Uno

VLAN - Virtual Local Area Network

Programmering i C. Lektion september 2009

Planen for idag. Indhold af G1. Kernealphaerne. Alpha erne. Datalogi 1F Forår 2003

ARP og ICMP. - service protokoller, som vi ikke kan undvære! Netteknik 1

Computeren inderst inde

Microcontroller, Arduino

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato:

MIPS, registerallokering og MARS

Skriftlig eksamen, Programmer som Data Onsdag 6. januar Spørgsmål 1 (20 %): Regulære udtryk og automater

Lageradministration Paging og segmentering

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Processoren: Fler-cyklus implementation

Pointers. Programmering i C. 11. december Lektion 5. Eksempel: denne plads. Getting the address of a variable:

Netværk & elektronik

Internet Protokollen. - IP er arbejdshesten på næsten alle netværk! Netteknik 1

LAB ØVELSE KONFIGURATION AF DHCP PÅ DANSK AF KIM DONNERBORG / RTS

// Definition af porte og funktioner

Løsningsforslag Skriftlig eksamen 9. januar 2012

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Seriel kommunikation

VLAN. - mange logiske net på ét fysisk! Netteknik 1

Repræsentation af tal

Processoren: Enkelt-cyklus implementation

DM507 Algoritmer og datastrukturer

Microcontroller, Arduino

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

Introduktion til Quality of Service

Programmering i C. Lektion oktober 2008

Infrastruktur i hjemmet og begreber

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.

Design af et ISA. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet

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

Kapitel 4 Løkker i C#

Programmering i C. Lektion september 2009

VLAN. VLAN og Trunks. Region Syd Grundlæggende netværk

Her kan du læse om OSI modellen, og de 7 forskellige lag. Der er en mindre detaljeret beskrivelse udfra hvert lag.

DM507 Algoritmer og datastrukturer

Quality of Service. - en introduktion! IP telefoni kursus

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Hurtigt i gang med LinMot DeviceNet til Allen Bradley Logix Plc

Hvis du ønsker at tilgå Internet trådløst, skal du selv anskaffe dette udstyr. Det kaldes ofte et access point eller en trådløs router.!

Transkript:

2582 Eksamen dcomnet Q2/2010 ID Navn

Example I A32-prg1 Betragt følgende program skrevet i IA-32 symbolsk maskinsprog:.section.data x:.long 2 r:.long 27.section.text.globl _start _start: pushl x movl $0,%ebx call func addl $4,%esp movl %eax,r movl r,%ebx movl $1,%eax int $0x80.type func, @function func: pushl %ebp movl %esp,%ebp movl 8(%ebp),%eax cmpl $0,%eax jle if jmp else if: movl %ebx,%eax jmp endif else: addl %eax,%ebx subl $1,%eax pushl %eax call func addl $4,%esp endif:movl %ebp,%esp popl %ebp ret Antag C kaldkonvention med hensyn til func funktionen. Antag eip=50 ebp=1016 esp=1000 eax=27 lige før første call func instruktion (første gang den udføres hvis den udføres mere end en gang) i start programdelen. Antag func ligger på addresse 150.

2582 Spørgsmål 1 I spm-b A32-prg1 Hvad er eip, ebp, esp, eax og ebx lige efter første call func instruktion (første gang den udføres hvis den udføres mere end en gang) i programdelen i eksemplet (IA32-prg1) ovenfor? a b c d e f g eip=150 ebp=1016 esp=992 eax=27 ebx=0 eip=150 ebp=1016 esp=1008 eax=27 ebx=0 eip=150 ebp=992 esp=992 eax=27 ebx=0 eip=150 ebp=1008 esp=1008 eax=27 ebx=0 eip=150 ebp=1016 esp=1002 eax=27 ebx=0 eip=51 ebp=1016 esp=992 eax=27 ebx=0 eip=150 ebp=1016 esp=996 eax=27 ebx=0 Spørgsmål 2 I spm-d A32-prg1 Hvilken funktion udfører programmet i almindelighed i eksemplet (IA32-prg1) ovenfor, hvis x er et vilkårligt, positivt heltal n? a n + (n 1) +... + 1 b 2 n c n! d n n e n 1 f programmet kører uendeligt (uendelig løkke) g n + n h n + 1 Spørgsmål 3 I spm-c A32-prg1 Hvilken værdi returnerer programmet i eksemplet (IA32-prg1) ovenfor, hvis x=5? a 0 b 10 c 25 d 4 e 15 f 120 g programmet kører uendeligt (uendelig løkke)

Spørgsmål 4 I spm-a A32-prg1 Hvilken værdi returnerer programmet i eksemplet (IA32-prg1) ovenfor? a programmet kører uendeligt (uendelig løkke) b 2 c 0 d 27 e 29 f 3 Example L ogik1 Betragt sandhedstabellen: A B I 1 I 2 I 3 I 4 Output 0 0 0 X X X 0 0 0 1 X X X 1 0 1 X 0 X X 0 0 1 X 1 X X 1 1 0 X X 0 X 0 1 0 X X 1 X 1 1 1 X X X 0 0 1 1 X X X 1 1 hvor X kan være 0 eller 1. Spørgsmål 5 L spm-a ogik1 Hvilken boolsk funktion implementerer sandhedstabellen i eksemplet (Logik1) ovenfor? a Output = ABĪ1 + ABĪ2 + ABĪ3 + ABĪ4 b Output = I 1 + I 2 + I 3 + I 4 c Output = AB(I 1 + I 2 + I 3 + I 4 ) d Output = Ā BĪ1 + ĀBĪ2 + A BĪ3 + ABĪ4 e Output = Ā BI 1 + ĀBI 2 + A BI 3 + ABI 4 f Output = ABI 1 + ABI 2 + ABI 3 + ABI 4

2582 Spørgsmål 6 L spm-b ogik1 Hvilket type kredsløb repræsenterer sandhedtabellen i eksemplet (Logik1) ovenfor? a b c d e f 4 input OR En halv adder 4 til 1 skifteregister 6 input OR 2 til 4 decoder 4 til 1 multiplexer Example i jvm-ass2 Betragt følgende ijvm-asm program:.method main bipush 88 bipush 4 bipush 3 isub iadd ireturn Spørgsmål 7 i spm-a jvm-ass2 Hvad er resultatet af kørsel af programmet i eksemplet (ijvm-ass2) ovenfor? a 88 b 87 c 95 d 90 e 89 Spørgsmål 8 i spm-b jvm-ass2 Hvad er den maksimale højde af stakken i eksemplet (ijvm-ass2) ovenfor, når programmet afvikles? a 3 b 7 c 8 d 6 e 5 f stakken er ikke veldefineret g 4

Example i jvm-ass1 Betragt følgende ijvm-asm program:.method method.args 2.define x = 1 iload x ifeq a iload x bipush 1 isub ifeq b bipush 88 iload x bipush 2 isub invokevirtual method bipush 3 iadd ireturn a: bipush 1 ireturn b: bipush 3 ireturn.method main bipush 1 bipush 3 invokevirtual method ireturn Spørgsmål 9 i spm-b jvm-ass1 Lige inden instruktionen ifeq a udføres (først gang hvis den udføres mere end en gang) i eksemplet (ijvm-ass1) ovenfor, hvordan ser stakken så ud? a stack = 88, 0, 1, 16 b stack = 3, 88, 0, 1, 16 c stack = 3, 15, 48, 3, 20, 0, 1, 16 d stack = 1, 48, 3, 20, 0, 1, 16 e stack = 0, 1, 16 f stack = 15, 48, 3, 88, 0, 1, 16

2582 Spørgsmål 10 i spm-a jvm-ass1 Hvad er resultatet af kørsel af programmet i eksemplet (ijvm-ass1) ovenfor? a 7 b 4 c 2 d programmet kører uendeligt (uendelig løkke) e 5 f programmet kan ikke oversættes, derfor kan det ikke køres g 8 h 1 i 6 j 3

Spørgsmål 11 p rog-exe Betragt følgende graf (PC står for Program Counter), som illustrerer den komplette udførsel af et program. Hvilken af følgende beskrivelser, kan grafen illustrere? a b c d e en programudførsel udelukkende med sekventiel udførsel en programudførsel med hop men uden kald af subroutiner (invokevirtual) det kan ikke afgøres ud fra grafen en programudførsel med hop og/eller kald af een subroutine (invokevirtual) en programudførsel med hop og/eller kald af flere subroutiner (invokevirtual)

2582 Example N et1 Betragt det lokale netværk bestående af 4 computere med hver deres netværkskort med følgende addresser: Computer 1: MAC addresse: 1A-1B-1C-1D-1E-1F-14 IP addresse: 111.111.111.111 Computer 2: MAC addresse: 1A-1B-1C-1D-1E-1F-13 IP addresse: 111.111.111.112 Computer 3: MAC addresse: 1A-1B-1C-1D-1E-1F-12 IP addresse: 111.111.111.113 Computer 4: MAC addresse: 1A-1B-1C-1D-1E-1F-11 IP addresse: 111.111.111.114 De 4 computere er koblet på en switch med 4 porte med følgende opkobling: Port A: Computer 4 Port B: Computer 3 Port C: Computer 2 Port D: Computer 1 og nuværende forwarding tabel: 1A-1B-1C-1D-1E-1F-13 : PortC Betraget ethernet framen som bliver sendt via nettet: Preamble 1A-1B-1C-1D-1E-1F-13 1A-1B-1C-1D-1E-1F-14 Type... Data... CRC Spørgsmål 12 N spm-a et1 Hvilken computer sender ethernet framen i eksemplet (Net1) ovenfor? a Computer 3 b Ingen c Computer 1 d Alle e Computer 4 f Computer 2

Spørgsmål 13 N spm-d et1 Betraget en anden ethernet frame, som bliver sendt via nettet: Preamble FF-FF-FF-FF-FF-FF-FF 1A-1B-1C-1D-1E-1F-13 Type... Data... CRC Hvilken computer sender switchen denne ethernet frame til i eksemplet (Net1) ovenfor? a Computer 4 b Computer 1, Computer 3 og Computer 4 c Computer 2 d Ingen e Alle f Computer 3 g Computer 1 Spørgsmål 14 N spm-c et1 Hvordan ser forwarding tabellen ud efter ethernet framen er sendt over nettet i eksemplet (Net1) ovenfor? a b c d 1A-1B-1C-1D-1E-1F-13 : PortC 1A-1B-1C-1D-1E-1F-11 : PortA 1A-1B-1C-1D-1E-1F-12 : PortB 1A-1B-1C-1D-1E-1F-14 : PortD 1A-1B-1C-1D-1E-1F-13 : PortC 1A-1B-1C-1D-1E-1F-11 : PortA 1A-1B-1C-1D-1E-1F-13 : PortC 1A-1B-1C-1D-1E-1F-14 : PortD 1A-1B-1C-1D-1E-1F-13 : PortC 1A-1B-1C-1D-1E-1F-12 : PortB

2582 Spørgsmål 15 N spm-b et1 Hvilken computer sender switchen ethernet framen til i eksemplet (Net1) ovenfor? a Computer 1 b Computer 4 c Computer 2 d Alle e Computer 3 f Ingen Example M ic-kode1 Betragt følgende symbolske mikrokode til Mic-1 og som er en ny instruktion (inew) til ijvm mikroprogrammet: inew: MAR = SP = SP - 1;rd OPC = TOS TOS = MDR H = 1 Z = H AND OPC;if (Z) goto T; else goto F T: OPC = PC - 1; fetch; goto goto_cont F: PC = PC + 1 PC = PC + 1;fetch goto main goto_cont: PC = PC +1;fetch H = MBR << 8 H = MBRU OR H PC = OPC + H; fetch goto main Antag PC=101 SP=200 MAR=200 TOS=201 Mem[101]=14 Mem[102]=0 Mem[103]=0 Mem[199]=15 Mem[200]=201 lige før inew instruktionen udføres. Mem[###] refererer til ordet (4 bytes) i lageret (memory) på ord-adressen ###.F.eks. Mem[1] svarer til bytes 4, 5, 6 og 7 i lageret.

Spørgsmål 16 M spm-b ic-kode1 Hvad er PC, SP, MAR, TOS, Mem[199] og Mem[200] lige efter der hoppes til main igen efter udførslen af inew i eksemplet (Mic-kode1) ovenfor? a b c d e f PC=102 SP=199 MAR=199 TOS=15 Mem[199]=15 Mem[200]=201 PC=114 SP=199 MAR=199 TOS=201 Mem[199]=201 Mem[200]=201 PC=103 SP=199 MAR=199 TOS=201 Mem[199]=201 Mem[200]=201 PC=103 SP=199 MAR=199 TOS=15 Mem[199]=15 Mem[200]=201 PC=114 SP=199 MAR=199 TOS=201 Mem[199]=15 Mem[200]=201 PC=114 SP=199 MAR=199 TOS=15 Mem[199]=15 Mem[200]=201 Spørgsmål 17 M spm-a ic-kode1 Hvilken operation udfører denne nye inew instruktion med hensyn til ijvm maskinen i eksemplet (Mic-kode1) ovenfor? a Sætter det øverste ord på stakken lig med 1 b Sætter det øverste ord på stakken lig med Z c Fjerner det øverste ord på stakken og hopper, hvis det er ulige d Sætter det øverste ord på stakken lig med H e Fjerner det øverste ord på stakken og hopper, hvis det er lige f Sætter det øverste ord på stakken lig med 0 Example i jvm-bin1 Betragt følgende ijvm binære kode: main index: 0 method area: 11 bytes 00 01 00 00 10 04 10 03 5f 60 ac constant pool: 1 words 00000000

2582 Spørgsmål 18 i spm-a jvm-bin1 Hvilken af følgende assembler programmer svarer den binære kode i eksemplet (ijvm-bin1) ovenfor til? a b c d e.method main bipush 4 bipush 3 ifeq a a: ireturn.method main bipush 3 bipush 4 swap iadd Ingen da der optræder en ulovlig instruktion.method main bipush 4 bipush 3 swap iadd ireturn.method main bipush 3 bipush 4 dup iadd Spørgsmål 19 m ic-inst Vi ønsker at implementere een mikroinstruktion, der samtidigt kan tælle både Stak Pointer (SP) og Program Counter (PC) en op. Hvordan kunne sådan en mikroinstruktion implementeres på Mic-1 arkitekturen (XXXXXXXXX er adressen på næste mikroinstruktion og er irrelevant i denne opgave)? a XXXXXXXXX 000 00111001 000000101 010 0101 b XXXXXXXXX 000 00110101 000000101 010 0001 c XXXXXXXXX 000 00110101 000000101 010 0101 d XXXXXXXXX 000 00111001 000000101 010 0001 e Kan ikke lade sig gøre i een mikroinstruktions cycklus

Spørgsmål 20 t al-rep Følgende tal er repræsenteret i 2-komplement, 8 bit: 11010101 Hvad er værdien af tallet? a 21 b -43 c 43 d -21 e 213 f 123