Digital- och datorteknik
|
|
- Robert Berglund
- för 6 år sedan
- Visningar:
Transkript
1 Digital- och datorteknik Föreläsning #16 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola
2 Behovet av ändring av programflödet För att kunna skriva ett avancerat datorprogram som anpassar sitt beteende utgående från ett beräkningsresultat eller på grund av interaktion med datoranvändaren måste datorn tillhandahålla instruktioner som möjliggör ändring av programflödet. Med möjlighet till val i programflödet kan datorn t ex utföra en av två möjliga sekvenser av maskininstruktioner beroende på om ett visst logiskt villkor är uppfyllt eller ej. För att konstruera sådana val i ett program behövs stöd i datorn för både ovillkorliga och villkorliga programflödesändringar ( hopp ).
3 Ovillkorliga hoppinstruktioner Jump -instruktionen Hoppdestinationens läge i primärminnet (effektivadressen, EA) anges av instruktionens operandinfo. T ex: JMP $ PC Branch always -instruktionen Hoppdestinationens läge i primärminnet (EA) utgörs av PCregistrets nuvarande värde plus en offset (i 2-komplementform). Värdet på offset anges av operandinfo. T ex: BRA $58 PC + (58 16 PC) PC offset = operandinfo
4 Ovillkorliga hoppinstruktioner Branch always -instruktionen (forts.) För beräkning av offset gäller följande: Instruktionens operationskod och operandinfo förutsätts ha hämtats när EA beräknas i datorn. Därför måste PC antas peka på den efterföljande instruktionens operationskod när värdet på offset beräknas. Instruktionens blivande läge i primärminnet måste vara känt när värdet på offset beräknas.
5 Demonstrationsexempel #1 ovillkorliga hopp a) "Jump"-instruktionen JMP $50 är placerad med början på adress Vad är dess maskinkod? b) "Branch"-instruktionen BRA $50 är placerad med början på adress Vad är dess maskinkod?
6 Demonstrationsexempel #2 ovillkorliga hopp a) "Jump"-instruktionen JMP $05 är placerad med början på adress Vad är dess maskinkod? b) "Branch"-instruktionen BRA $05 är placerad med början på adress Vad är dess maskinkod?
7 Villkorliga hoppinstruktioner De villkor som styr datorns programflöde kan vara godtyckligt komplicerade. Den automatiska styrenheten, som skall utföra programflödesändringen, kan inte själv göra de beräkningar som behövs för att avgöra om ett villkor är uppfyllt eller ej. Styrenheten har bara tillgång till datavägens flaggbitar, och det förutsätts därför att dessa redan har manipulerats på ett sådant sätt att de representerar det villkor som styr programflödet. Exempel: om programflödet skall ändras när addition av två tal med tecken ger spill måste V-flaggan ha satts till 1 vid additionsinstruktionen. Exempel: om programflödet skall ändras när värdet på ett tal är skilt från 0 måste Z-flaggan ha nollställts av någon lämplig instruktion.
8 Villkorliga hoppinstruktioner De villkorliga hoppinstruktionerna har stora likheter med den ovillkorliga branch always -instruktionen (BRA), i den mening att samtliga använder PC-relativ adressering. Skillnaden gentemot BRA-instruktionen är att de villkorliga instruktionerna enbart sätter PC till hoppdestinationen (EA) om ett givet villkor är uppfyllt. I annat fall kommer PC att peka på efterföljande instruktion. T ex: BNE $23 if (Z = 0) PC + (23 16 PC) PC
9 Villkorliga hopp med enkla villkor Följande branch -instruktioner utför en ändring av programflödet utgående från värdet på en given flaggbit: Instruktion Villkor BMI N BPL N BEQ Z BNE Z BCS C BCC C BVS V BVC V Branch if minus Branch if plus Branch if equal Branch if not equal Branch if carry set Branch if carry clear Branch if overflow set Branch if overflow clear
10 Villkorliga hopp med jämförelsevillkor En vanligt förekommande situation vid val i programflödet är att man jämför två tal med varandra, och gör en ändring av programflödet beroende på talens inbördes relation. Detta kan exempelvis ske när man vill kontrollera huruvida ett värde ligger inom ett givet intervall eller när man sorterar en lista med tal. I FLIS-datorn utförs jämförelsen med en CMP-instruktion, som beräknar differensen mellan de två talen och sätter flaggbitarna utgående från resultatet. Den erhållna differensen sparas ej. T ex: CMPA #6 jämför innehållet i register A med konstanten 6 10 CMPX $93 jämför innehållet i register X med innehållet i minnescellen på adress 93 16
11 Villkorliga hopp med jämförelsevillkor De grundläggande utfall som kan erhållas från CMP-instruktionen är större än (>), lika med (=) och mindre än (<). Vi kan också få de logiska komplementen (,, ) till dessa utfall. Frågan är nu vilka flaggbitar som skall undersökas för att korrekt representera respektive villkor? Utfallet lika med (=) motsvarar villkoret Z. Dess komplement inte lika med ( ) motsvarar villkoret Z. De övriga utfallen är lite mer komplicerade att analysera, då de flaggbitar som skall undersökas beror på vilken talrepresentation som gäller. Precis som vid vår tidigare analys av ALU-aritmetik behöver vi beakta två fall: tal utan tecken och tal med tecken.
12 Villkorliga hopp med jämförelsevillkor (tal utan tecken) Antag att talet X jämförs med talet Y medelst subtraktionen X Y. Vid utfallet mindre än (<) måste subtraktionen ha gett spill (C=1), då en negativ differens inte kan representeras för tal utan tecken. Utfallet mindre än (<) motsvarar alltså villkoret C. Vi kan nu se att utfallet mindre eller lika med ( ) fås när antingen C=1 eller Z=1, d v s utfallet motsvarar villkoret C + Z. Utfallet större än (>), som är det logiska komplementet till mindre eller lika med, motsvarar därför villkoret (C + Z). Utfallet större eller lika med ( ), som ju är det logiska komplementet till mindre än, motsvarar villkoret C.
13 Villkorliga hopp med jämförelsevillkor (tal med tecken) Antag att talet X jämförs med talet Y medelst subtraktionen X Y. Vid utfallet mindre än (<) måste resultatet har blivit negativt (N=1), givet att spill inte uppstått (V=0). Om subtraktionen gett spill (V=1) måste resultatet istället ha blivit positivt (N=0). Utfallet mindre än (<) motsvarar alltså villkoret N V +N V = N V. Utfallet mindre eller lika med ( ) motsvarar villkoret (N V) + Z. Utfallet större än (>), det logiska komplementet till mindre eller lika med, motsvarar villkoret ((N V) + Z). Utfallet större eller lika med ( ), det logiska komplementet till mindre än, motsvarar villkoret (N V).
14 Villkorliga hopp med jämförelsevillkor Vi har därmed fått en förklaring till varför nedanstående avkodning av flaggbitarna görs i styrenheten. Dessa villkorssignaler finns tillgängliga i Digiflisps Instruction builder och på kopplingsplattan i Lab 3, för att möjliggöra implementering av villkorliga hopp.
15 Villkorliga hopp med jämförelsevillkor (sammanställning) Hoppvillkor för villkorliga hopp för tal utan respektive med tecken. Notera terminologin som används för instruktionsnamnen. Hoppvillkor utan tecken Relation Hoppvillkor med tecken higher higher or same equal not equal lower or same lower BHI (C + Z) X > Y ((N V) + Z) BGT BHS C X Y (N V) BGE BEQ Z X = Y Z BEQ BNE Z X Y Z BNE BLS C + Z X Y (N V) + Z BLE BLO C X < Y N V BLT greater greater or equal equal not equal less or equal less than
16 Demonstrationsexempel #3 villkorliga hopp X.18 För vilka värden på W utförs hoppet nedan? Betrakta W som ett tal 0,255. LDA #$85 CMPA #W B(Villkor) Hopp om det villkorliga hoppet är: a) BHI e) BGT b) BHS f) BGE c) BLS g) BLE d) BLO h) BLT
17 Stackoperationer Behovet av tillfällig datalagring I många sammanhang kan man som programmerare hamna i en situation där man har behov av tillfällig lagring av data, men man har inte tillräckligt många register till förfogade i processorn. Det är därför lämpligt att reservera en del av primärminnet för sådan tillfällig datalagring. Denna del av minnet bör inte vara för stor för att inte äta upp utrymme för lagring av program, men får samtidigt inte vara för snålt tilltagen så att man inte kan göra den temporära lagring som programmet behöver. En annan viktig aspekt är att programmeraren på ett enkelt sätt skall kunna lägga till och ta bort data i denna del av minnet. Detta kan lösas med en datastruktur, kallad stack (stapel).
18 Tallriksmodellen Stackoperationer På en stack lagras binära ord på precis samma sätt som man staplar tallrikar på en hylla, d v s bildligt talat ovanpå varandra. Basläget kallas "bottom-of-stack", BOS och läget för det sist pålagda elementet kallas "top-of-stack", TOS. top-of-stack, TOS bottom-of-stack, BOS
19 Tallriksmodellen Stackoperationer Element kan endast läggas till och tas bort ovanifrån, d v s via toppen av stacken. Denna princip för att komma åt elementen kallas "sist in - först ut" (eng. last in - first out, LIFO). Att lägga nya element på stacken benämns "push. Att hämta element från stacken benämns "pull" (ibland "pop"). top-of-stack, TOS bottom-of-stack, BOS
20 Stackoperationer Tallriksmodellen Stacken realiseras i datorn genom användandet av en stackpekare SP, som håller reda på TOS. Stacken initieras genom att SP laddas med BOS. stackpekare SP Ett element läggs på stacken med PUSH -instruktionen, som lagrar data från ett processorregister till stacken med adresseringsmetoden register indirect SP, pre-decrement. T ex: PSHA SP - 1 SP, A M(SP) TOS TOS=BOS-n... BOS-2 BOS-1 BOS Ett element hämtas från stacken med PULL -instruktionen, som hämtar data från stacken till ett processorregister med adresseringsmetoden register indirect SP, post-increment. T ex: PULX M(SP) X, SP + 1 SP FF 16 Figur F.19 Stackens tillväxt och adressering via stackpekaren.
21 Stackoperationer Användningsområden Stacken används huvudsakligen i följande situationer: Vid anrop till subrutin: spara automatiskt en kopia av PCregistrets nuvarande innehåll (ett bokmärke ) på TOS. Anrop till subrutin görs med JSR eller BSR Återhopp från subrutin (till bokmärke ) görs med RTS Under anrop till subrutin: skapa utrymme för lokala variabler och spara kopior av register som manipuleras i subrutinen. Minnesutrymme för variabler skapas / tas bort med LEASP n,sp Registerinnehåll sparas / återställs med PUSH / PULL
Digital- och datorteknik
Digital- och datorteknik Föreläsning #16 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Behovet av ändring av programflödet För att kunna skriva
Digital- och datorteknik
Digital- och datorteknik Föreläsning #17 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Tallriksmodellen Stackoperationer Element kan endast
Digital- och datorteknik
Digital- och datorteknik Föreläsning #17 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola F-36 FLEX- och FLIS-datorn Ext-8 Tallriksmodellen Stackoperationer
Digital- och datorteknik
Digital- och datorteknik Föreläsning #15 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Dataväg med pekarregister och stackpekare: I vår sjunde,
Programexempel för FLEX
Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Konstruera styrenheten. genom att. implementera olika maskininstruktioner i styrenheten. Kunna använda
Digital- och datorteknik
Digital- och datorteknik Föreläsning #15 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Dataväg med pekarregister och stackpekare: I vår sjunde,
F4: Assemblerprogrammering
F4: Assemblerprogrammering Hoppinstruktioner Branch Jump Med vilkor IF satser Loopar while-loopar do-while- loopar for-loopar Stackhantering Underprogram 1 BRA rel_adr Branch Always Relativadressering
Reducerad INSTRUKTIONSLISTA för FLIS-processorn
Reducerad INSTRUKTIONSLI för FLIS-processorn 2013-11-08 2(10) Innehåll Sidan 3 Programmerarens bild av FLIS-processorn 4 Förklaring av beteckningar i instruktionslistan 5 Enkel dataflyttning 5 Logik 5
Styrenheten styrsignalsekvenser programflödeskontroll
Styrenheten styrsignalsekvenser programflödeskontroll Kontroll av programflöde Instruktionerna är ordnade sekventiellt i minnet och utförs normalt i denna ordning. Vissa programkonstruktioner kräver dock
Villkorliga hopp: 9/26/2011. Dagens mål: Du ska kunna.. Villrorliga (Relativa) hopp - forts Arb s 140. LV5 Fo12. LV5 Fo12. Aktivera Kursens mål:
Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna Använda en modern microcontroller Aktivera Förra veckans mål: Konstruera styrenheten. genom att. implementera olika maskininstruktioner
Konstruera en dator mha grindar och programmera denna Använda en modern microcontroller
Aktivera Kursens mål: LV5 Fo12 Konstruera en dator mha grindar och programmera denna Använda en modern microcontroller Aktivera Förra veckans mål: Konstruera styrenheten. genom att. implementera olika
Digital och Datorteknik EDA /2010. EDA Digital och Datorteknik
EDA 45 - Digital och Datorteknik Dagens föreläsning: Assemblerprogrammering för FLEX, Extra material Ext 8 Ur innehållet: Programmerarens bild av FLEX Instruktionsuppsättning Register åtkomliga för programmeraren
Extrauppgifter för CPU12
1 Extrauppgifter för CPU12 X1a) Skriv en instruktionssekvens som nollställer bit 3-0 i alla minnesord i adressintervallet 2035H, 2049H Använd X-registret för adressering X1b) Skriv en subrutin som maskerar
TSEA28 Datorteknik Y (och U)
TSEA28 Datorteknik Y (och U) Föreläsning 2 Kent Palmkvist, ISY TSEA28 Datorteknik Y (och U), föreläsning 2, Kent Palmkvist 2017-01-17 2 Dagens föreläsning Kort repetition Större programmeringsexempel Subrutiner
Digital- och datorteknik
Digital- och datorteknik Föreläsning #19 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Normaltillstånd vs undantagstillstånd I normaltillstånd
TSEA28 Datorteknik Y (och U)
TSEA28 Datorteknik Y (och U), föreläsning 2, Kent Palmkvist 2018-01-16 3 TSEA28 Datorteknik Y (och U) Föreläsning 2 Kent Palmkvist, ISY Praktiska kommentarer Mail kommer skickas ut när labanmälan är möjlig
FLEX Instruktionslista
FLEX Instruktionslista Innehåll 1 Förklaring av beteckningar i instruktionslistan... 2 2 Detaljerad beskrivning av FLEX-processorns instruktioner... 3 3 Operationskoder, maskincykler och flaggpåverkan...
Tentamen (Exempel) Datorteknik Y, TSEA28
Tentamen (Exempel) Datorteknik Y, TSEA28 Datum 2018-08-21 Lokal TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2017-10-26 Lokal TER1, TER3 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive
Tentamen (Exempel) Datorteknik Y, TSEA28
Tentamen (Exempel) Datorteknik Y, TSEA28 Datum 2018-10-31 Lokal TER4 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2016-05-31 Lokal Kåra, T1, T2, U1, U15 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal
Digital- och datorteknik
Digital- och datorteknik Föreläsning #8 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Assemblatorer vs kompilatorer En assemblator är ett program
Tentamen (Exempel) Datorteknik Y, TSEA28
Tentamen (Exempel) Datorteknik Y, TSEA28 Datum 2018-xx-xx Lokal TER1, TER3 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor
Tentamen (Exempel) Datorteknik Y, TSEA28
Tentamen (Exempel) Datorteknik Y, TSEA28 Datum 2018-05-29 Lokal KÅRA,T1,T2, Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2016-10-18 Lokal TER1 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive
TSEA28 Datorteknik Y (och U)
TSEA28 Datorteknik Y (och U), föreläsning 2, Kent Palmkvist 2019-01-22 3 TSEA28 Datorteknik Y (och U) Föreläsning 2 Kent Palmkvist, ISY Praktiska kommentarer Labanmälan öppnar måndag 28/1 kl 12.30 Anmälningssystemet
Digital- och datorteknik
Digital- och datorteknik Föreläsning #18 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Assemblerprogrammering Assemblatorer vs kompilatorer
Bilda styrsignalerna till datavägen RESET FETCH EXECUTE NF NF NF. Digital och Datorteknik EDA /2011. Digital och Datorteknik EDA /2011
EDA 45 - Digital och Datorteknik Dagens föreläsning:, exemplifierad med FLEX Arbetsboken kapitel 9-22 Ur innehållet: En automatisk styrenhet Grundläggande d instruktioner Adresseringssätt Konstruktion
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2015-06-01 Lokal Tid 14-18 Kurskod Provkod Kursnamn Provnamn Institution Antal frågor 6 Antal sidor (inklusive denna sida) 6 Kursansvarig Lärare som besöker skrivsalen
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2015-08-18 Lokal TERE, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive
Digital- och datorteknik
Digital- och datorteknik Föreläsning #14 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Vad vi har åstadkommit hittills: Med hjälp av kombinatoriska
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2017-08-15 Lokal TER4 Tid 14-18 Kurskod Provkod Kursnamn Provnamn Institution Antal frågor 6 Antal sidor (inklusive denna sida) 6 Kursansvarig Lärare som besöker skrivsalen
Digital- och datorteknik
Digital- och datorteknik Föreläsning #8 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Aritmetik i digitala system Grindnät för addition: Vi
FLEXIBLE INSTRUCTION SET PROCESSOR FLISP
2014-08-19 FLEXIBLE INSTRUCTION SET PROCESSOR FLISP FLISP - HANDBOK Detta häfte utgör den sammanfattande beskrivningen av FLISprocessorn. Häftet är indelat i två delar. Del 1 behandlar assemblerprogrammerarens
Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner
Ext-3 (Ver 204-04-08) Exempel på RTN-beskrivning av FLEX-instruktioner. Figur på sidan 2 i detta häfte visar hur datorn FLEX är uppbyggd. På sidan visas dessutom hur ALU:ns funktion väljs med styrsignalerna
Omtentamen i CDT204 - Datorarkitektur
Omtentamen i CDT204 - Datorarkitektur 2012-11-05 Skrivtid: 08.10-12.30 Hjälpmedel: Miniräknare och valfritt skriftligt (ej digitalt) material. Lärare: Stefan Bygde, kan nås på 070-619 52 83. Tentamen är
FLEXIBLE INSTRUCTION SET PROCESSOR FLISP
2013-08-14 FLEXIBLE INSTRUCTION SET PROCESSOR FLISP Detta häfte utgör den sammanfattande beskrivningen av FLISprocessorn. Häftet är indelat i två delar. Del 1 behandlar assemblerprogrammerarens bild av
Digital- och datorteknik
Digital- och datorteknik Föreläsning #7 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Aritmetik i digitala system Speciella egenskaper: Systemet
Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner
Ext-3 (Ver 203-04-2) Exempel på RTN-beskrivning av FLEX-instruktioner. Figur på sidan 2 i detta häfte visar hur datorn FLEX är uppbyggd. På sidan visas dessutom hur ALU:ns funktion väljs med styrsignalerna
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2015-10-20 Lokal TERE, TER2 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive
Assemblerprogrammering för ARM del 2
Assemblerprogrammering för ARM del 2 Ur innehållet Programflöde Subrutiner, parametrar och returvärden Tillfälliga (lokala) variabler Läsanvisningar: Arbetsbok kap 2 Quick-guide, instruktionslistan Assemblerprogrammering
Digital- och datorteknik
Digital- och datorteknik Föreläsning #7 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Speciella egenskaper: Systemet arbetar med kodord (s k
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2017-06-02 Lokal G35, TER2, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor
INSTRUKTIONSLISTA för FLEX-processorn
INSTRUKTIONSLISTA för FLEX-processorn Detta häfte får användas vid tentamen i Digital- och datorteknik. Anteckna ej i häftet, under/ överstrykning är tillåtet. 2008-10-10 Innehåll Sidan Programmerarens
Styrenheten 9/17/2011. Styrenheten - forts Arb s 120. LV4 Fo10. Aktivera Kursens mål: Kap 7 Blå
Aktivera Kursens mål: LV4 Fo10 Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Koppla samman register och ALU till en dataväg Minnets uppbyggnad och anslutning till datavägen
TENTAMEN(Nu anpassad till FLIS- processorn)
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN(Nu anpassad till FLIS- processorn) KRSNAMN Digital- och datorteknik PROGRAM: KRSBETECKNING Elektro Åk / lp 4 EDA26 EXAMINATOR
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2016-08-16 Lokal TER2, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive
LABORATION. Datorteknik Y
LABORATION Datorteknik Y Mikroprogrammering Version 3.3 2012 (AE) 2013 (AE) 2017 (KP) Namn och personnummer Godkänd Uppg. 1-3 1 1 Inledning Syftet med laborationen är att skapa en känsla för vad som händer
Digital- och datorteknik
Digital- och datorteknik Föreläsning #24 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Allmänt Behovet av processorinstruktioner för multiplikation
Digital- och datorteknik. Mekatronik-, data- och elektroingenjör Åk 1/ lp 1o2. Lars-Eric Arebrink. Av institutionen utgiven. vid flera tillfällen
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KURSNAMN Digital- och datorteknik PROGRAM: KURSBETECKNING Mekatronik-, data- och elektroingenjör Åk / lp o2 LEU43 EXAMINATOR
Digital- och datorteknik. Lars-Eric Arebrink. Betyg 4: 36 poäng Betyg 5: 48 poäng
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KURSNAMN Digital- och datorteknik PROGRAM: KURSBETECKNING Elektro Åk / lp 4 EDA26 EXAMINATOR Lars-Eric Arebrink TID FÖR
Laboration nr 3 behandlar
(2013-04-20) Laboration nr 3 behandlar Konstruktion och test av instruktioner (styrsignalsekvenser) för FLISP Följande uppgifter ur Arbetsbok för DigiFlisp ska vara utförda som förberedelse för laborationen.
LABORATION. Datorteknik Y Datorkonstruktion D
LABORATION Datorteknik Y Datorkonstruktion D Mikroprogrammering (del 1 och 2) Version 3.1 2012 (AE) Namn och personnummer Godkänd Godkänd Uppg. 1-3 Uppg. 4-6 1 1 Inledning Syftet med laborationen är att
CE_O1. Nios II. Enkla assembler-instruktioner.
IS1500 ösningsförslag till övning CE_O1 2014 CE_O1. Nios II. Enkla assembler-instruktioner. 1.1. Datorarkitektur för Nios II a) Tabell 3 1 i Nios II Processor Reference Handbook visar processorns register:
EDA215 Digital- och datorteknik för Z
EDA25 Digital- och datorteknik för Z Tentamen Måndag 7 december 2007, kl. 08.30-2.30 i M-salar Examinatorer Rolf Snedsböl, tel. 772 665 Kontaktpersoner under tentamen Som ovan. Tillåtna hjälpmedel Häftet
Digital- och datorteknik
Digital- och datorteknik Föreläsning #8 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik halmers tekniska högskola Vi har sett att man bör kunna bygga en komponent (ett grindnät)
Digitala System: Datorteknik ERIK LARSSON
Digitala System: Datorteknik ERIK LARSSON Dator Primärminne Instruktioner och data Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction Programexekvering (1)
Per Holm Lågnivåprogrammering 2014/15 24 / 177. int och double = = 2, 147, 483, 647
Lågnivåprogrammering Föreläsning 2 Lågnivåprogrammering Förberedelse inför laboration 2. Maskinspråk, assemblerspråk Talrepresentation En enkel dator, komponenter Instruktionsformat, instruktionscykel
Tentamen Datorteknik Y, TSEA28 Datum 2012-08-14
Tentamen Datorteknik Y, TSEA28 Datum 2012-08-14 Lokal TER2 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Datorteknik Y Institution ISY Antal frågor 6 Antal sidor (inklusive denna sida) 7 Kursansvarig Andreas
Assemblerprogrammering del 3
Assemblerprogrammering del 3 Dagens föreläsning behandlar: Kompendiet kapitel 9 och 10.4 Arbetsboken kapitel 16 Ur innehållet: Modularisering, subrutiner och strukturerad programutveckling (flödesdiagram)
Mål. Datorteknik. Innehåll. Innehåll (forts) Hur ser ett program ut? Hur skapas maskinkoden?
Mål Datorteknik Föreläsning 3 Att veta hur maskinkoden för ett program byggs upp Att börja programmera i på riktigt Att kunna skriva och anropa subrutiner i Att förstå hur stacken fungerar Att veta vad
Lösningsförslag tenta
Lösningsförslag tenta 2013-12-16 (Version 5 med reservation för eventuella fel. Uppdaterad 140417.) 1. X = 1010 0101 2 ; Y = 0101 1011 2 (8 bitars ordlängd) a) [0, 2 n 1] = [0, 2 8 1] = [0, 255] b) [ 2
Digital- och datorteknik. Lars-Eric Arebrink. vid flera tillfällen. Betyg 4: 36 poäng Betyg 5: 48 poäng
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KRSNAMN Digital- och datorteknik PROGRAM: KRSBETECKNING Elektro Åk / lp 4 EDA26 EXAMINATOR Lars-Eric Arebrink TID FÖR
LABORATION. Datorkonstruktion D
LABORATION Datorkonstruktion D Mikroprogrammering Version 4.0 2017 (AN) 1 1 Inledning Syftet med laborationen är att skapa en känsla för vad som händer i en enkel dator då en maskinkodsinstruktion (även
Lågnivåprogrammering. Föreläsning 2 Lågnivåprogrammering. Binära tal. En enkel modell av datorns inre
Lågnivåprogrammering Föreläsning 2 Lågnivåprogrammering Förberedelse inför laboration 2. Maskinspråk, assemblerspråk Talrepresentation En enkel dator, komponenter Instruktionsformat, instruktionscykel
CHALMERS TEKNISKA HÖGSKOLA
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Tentamen EDA217 Grundläggande Datortekik, Z EDA433 Grundläggande Datortekik, IT EDA452 Grundläggande Datortekik, D DIT790 Digital-
Digital- och datorteknik. Lars-Eric Arebrink. Betyg 4: 36 poäng Betyg 5: 48 poäng
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KURSNAMN Digital- och datorteknik PROGRAM: KURSBETECKNING Elektro Åk / lp 4 EDA26 EXAMINATOR Lars-Eric Arebrink TID FÖR
7) Beskriv tre sätt att överföra parametrar mellan huvudprogram och subrutin.
1(5) Övningstentamen i Mikrodatorer och assemblerprogrammering, ELGA05 Hjälpmedel: Bifogad lista med memokoder för MC68xxx. Samtliga programmeringsuppgifter ska innehålla flödesschema med förklaringar
Datorteknik. Föreläsning 3. Assembler, stack och subrutiner, programmeringskonventionen. Institutionen för elektro- och informationsteknologi, LTH
Datorteknik Föreläsning 3 Assembler, stack och subrutiner, programmeringskonventionen Mål Att veta hur maskinkoden för ett program byggs upp Att börja programmera i assembler på riktigt Att kunna skriva
Institutionen för elektro- och informationsteknologi, LTH
Datorteknik Föreläsning 3 Assembler, stack och subrutiner, programmeringskonventionen Mål Att veta hur maskinkoden för ett program byggs upp Att börja programmera i assembler på riktigt Att kunna skriva
Övningsuppgifter i Mikrodatorteknik 4p/5p
Övningsuppgifter i Benny Thörnberg Mittuniversitetet Inst. för Informationsteknologi och medier Hösten 2005 1 Exekvering av assemblerkod 1.1 Statusflaggors beteende Vad blir C-, N- och Z- flaggornas värden
Dataminne I/O Stack 0x005D 0x3D SP low byte 0x005E 0x3E SP high byte
CT3760 Mikrodatorteknik Föreläsning 4 Tisdag 2005-09-06 Stacken I datasammmanhang är en stack ett minnesområde. Det är processorn som använder stacken. För att skapa en stack anger man en adress i stackpekarregistret.
Digital- och datorteknik
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KURSNAMN Digital- och datorteknik PROGRAM: KURSBETECKNING Mekatronikingenjör (samt data- och elektroingenjör) Åk / lp
Exempel 2 på Tentamen med lösningar
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Exempel 2 på Tentamen med lösningar Grundläggande datorteknik Examinator Kontaktperson under tentamen Tillåtna hjälpmedel Häfte
TENTAMEN. Digital- och datorteknik. Institutionen för data- och informationsteknik Avdelningen för datorteknik LEU431. Lars-Eric Arebrink
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KURSNAMN Digital- och datorteknik PROGRAM: Data-, elektro- och mekatronikingenjör åk / lp och 2 KURSBETECKNING LEU43
Centralenheten: ALU, dataväg och minne
Centralenheten: ALU, dataväg och minne Dagens föreläsning: Kompendium kapitel 7 Arbetsbokens kapitel 11,12 RTN - Register Transfer Notation Förenklat skrivsätt för att specificera operationer där register
Lösningar till tentamen i EIT070 Datorteknik
Lösningar till tentamen i EIT070 Datorteknik Institutionen för Elektro- och informationsteknik, LTH Torsdagen den 13 mars 2014, klockan 14:00 19:00 i MA:10. Tillåtna hjälpmedel: på tentan utdelad formelsamling,
Digital- och datorteknik
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KRSNAMN Digital- och datorteknik PROGRAM: KRSBETECKNING EXAMINATOR Data-, elektro- och mekatronikingenjör Åk / lp och
3. Mikroprogrammering II
3. Mikroprogrammering II lite repetition in/ut-matning avbrott på OR-datorn hoppinstruktion labben Olle Roos dator LDA 000 12 ADD 100 7 STA 000 13 12 1 13 8 13 6 8 0 18,1,11 2,3,5,11 7,8,11 17,10 18,1,11
Tentamen Datorteknik Y, TSEA28 Datum 2013-08-20
Tentamen Datorteknik Y, TSEA28 Datum 2013-08-20 Lokal TER2 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Datorteknik Y Institution ISY Antal frågor 6 Antal sidor (inklusive denna sida) 13 Kursansvarig
Stack och subrutiner Programmeringskonventionen
Stack och subrutiner Programmeringskonventionen Du ska förstå hur en instruktion behandlas i processorn Du ska känna till några fler instruktioner Du ska veta hur maskinkoden för ett program byggs upp
Exempel 3 på Tentamen
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Exempel 3 på Tentamen Grundläggande datorteknik Examinator Kontaktperson under tentamen Tillåtna hjälpmedel Häfte Instruktionslista
General Purpose registers ALU I T H S V N Z C SREG. Antag att vi behöver skriva in talet 25 till register R18
F3 Föreläsning i Mikrodatorteknink 2006-08-29 Kärnan i microcontrollern består av ett antal register och en ALU. Till detta kommer också ett antal portar. Det finns 64 st portar. Några är anslutna mot
CE_O3. Nios II. Inför lab nios2time
IS1200 Exempelsamling till övning CE_O3, 2015 CE_O3. Nios II. Inför lab nios2time 3.1. Logiska operationer (se uppgift 1.2 c) Repetera (eller lär dig) innebörden av de logiska operationerna "bitvis AND",
Föreläsningsanteckningar 2. Mikroprogrammering I
Föreläsningsanteckningar 2. Mikroprogrammering I Olle Seger 2012 Anders Nilsson 2016 Innehåll 1 Inledning 2 2 En enkel dator 2 3 Komponenter 3 3.1 Register............................... 3 3.2 Universalräknare..........................
Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP.
Övningsuppgifter Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP. F.2 Ett antal på varandra följande minnesord har
Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler
Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler Talsystem Talsystem - binära tal F1.1) 2 n stycken tal från 0 till 2 n 1 F1.2) 9 bitar (512 kombinationer) Talsystem - 2-
Tentamen. EDA432 Digital- och datorteknik, It DIT790 Digital- och datorteknik, GU. Onsdag 12 Januari 2011, kl
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Tentamen EDA432 Digital- och datorteknik, It DIT790 Digital- och datorteknik, GU Onsdag 12 Januari 2011, kl. 14.00-18.00 Examinatorer
F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen
68000 Arkitektur F2: Motorola 68000 I/O signaler Processor arkitektur Programmeringsmodell Assembler vs. Maskinkod Exekvering av instruktioner i 68000 Instruktionsformat MOVE instruktionen Adresseringsmoder
Lösningsförslag till Tenta i Mikrodator
Lösningsförslag till Tenta i Mikrodator 050113 1. Vilka register finns det i processorn och vad används dessa till? D0 till D7: Dataregister som används för beräkningar A0 till A6: Adressregister som används
Programräknaren visar alltid på nästa instruktion som skall utföras. Så fort en instruktion har hämtats så visar programräknaren på nästa instruktion.
F5 Föreläsning i Mikrodatorteknink 2006-09-05 Programräknaren visar alltid på nästa instruktion som skall utföras. Så fort en instruktion har hämtats så visar programräknaren på nästa instruktion. Programräknaren
Exempel 1 på Tentamen med lösningar
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Exempel 1 på Tentamen med lösningar Grundläggande datorteknik Examinator Kontaktperson under tentamen Tillåtna hjälpmedel Häfte
Datorteknik. Föreläsning 6. Processorns uppbyggnad, pipelining. Institutionen för elektro- och informationsteknologi, LTH. Mål
Datorteknik Föreläsning 6 Processorns uppbyggnad, pipelining Mål Att du ska känna till hur processorn byggs upp Att du ska kunna de viktigaste byggstenarna i processorn Att du ska känna till begreppet
Assemblerprogrammets struktur; exempel
Maskinorienterad Programmering 2010/11 Maskinnära programmering en introduktion Ur innehållet: Assemblatorn, assemblerspråk Datatyper Tilldelningar, l i unära och binära operationer Permanenta/tillfälliga
9/22/2012. Assemblernivå Beskrivning av funktion Automatiskt styrd borrmaskin Positionera borr Starta borr Borra genom arbetsstycke...
LV4 Fo10 Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Koppla samman register och ALU till en dataväg Minnets uppbyggnad och anslutning till datavägen
Datorsystemteknik DVGA03 Föreläsning 8
Datorsystemteknik DVGA03 Föreläsning 8 Processorns uppbyggnad Pipelining Större delen av materialet framtaget av :Jan Eric Larsson, Mats Brorsson och Mirec Novak IT-inst LTH Innehåll Repetition av instruktionsformat
Tentamen. EDA452 Grundläggande Datorteknik, D DIT790 Digital- och datorteknik, GU. Måndag 17 December 2012, kl
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Tentamen EDA452 Grundläggande Datorteknik, D DIT790 Digital- och datorteknik, GU Måndag 17 December 2012, kl. 8.30-12.30 Examinatorer
Minnet. Minne. Minns Man Minnet? Aktivera Kursens mål: LV3 Fo7. RAM-minnen: ROM PROM FLASH RWM. Primärminnen Sekundärminne Blockminne. Ext 15.
Aktivera Kursens mål: LV3 Fo7 Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Konstruktruera olika kombinatoriska nät som ingår i en dator. Studera hur addition/subtraktion
Fö 5+6 TSEA81. Real-time kernel + Real-time OS
Fö 5+6 TSEA81 Real-time kernel + Real-time OS Stackens användningsområde * JSR / RTS : returadress * Temporärdata (push / pop) void myfunc(void) { int i; // hamnar nog i register int test[10]; // hamnar