God oversikt over pensum med forklaringer, formler, vanlige feil og eksamenstips.
IN2060 Digitalteknikk og datamaskinarkitektur er et sentralt emne ved Institutt for informatikk, UiO. Kurset dekker hele veien fra transistorer og logiske porter opp til prosessorarkitektur med pipeline og minnesystemer. Eksamen er en 4-timers digital prove (Inspera) med 100 poeng totalt, uten hjelpemidler (kun Inspera-kalkulator). Det gis ikke trekk for feil avkrysning.
Eksamen folger et fast monster med 20-23 oppgaver fordelt pa 7-8 kategorier: digital representasjon (4-6 poeng), kombinatorisk logikk (5-7 poeng), sekvensiell logikk (14 poeng), HDL/VHDL (10-14 poeng), digitale byggeblokker (6-12 poeng), datamaskinarkitektur og ARM assembly (16-22 poeng), mikroarkitektur og pipeline (12-16 poeng), og minnesystemer (14-20 poeng). Oppgavetypene varierer mellom flervalg, nedtrekk, fyll-inn-tall og plasser-i-tekst.
Eksamen tester breddeforstaelse -- du ma beherske alle emnene. De storste poenggiverne er typisk sekvensielle kretser (tidsdiagrammer), ARM assembly (oversettelse og maskinkode), pipeline-analyse, og cache/minneoppslag. Prioriter disse fire omradene ekstra.
Konvertering mellom tallsystemer (desimal, binaer, heksadesimal, oktal), 2-ers komplement for negative tall, og bitopploesning. Grunnleggende ferdigheter som testes i starten av hver eksamen.
Digital representasjon handler om hvordan tall representeres i datamaskiner. Alle data lagres som binaere tall (0 og 1), og du ma beherske konvertering mellom desimal (base 10), binaer (base 2), heksadesimal (base 16) og oktal (base 8). Pa eksamen kommer det alltid 2-3 oppgaver om tallkonvertering, typisk verdt 4-6 poeng totalt.
For a konvertere et desimaltall til binaert, bruker du gjentatt divisjon med 2. Del tallet pa 2, noter resten (0 eller 1), og fortsett med kvotienten til den blir 0. Les restene baklengs for a fa det binaere tallet. For eksempel: 37 / 2 = 18 rest 1, 18 / 2 = 9 rest 0, 9 / 2 = 4 rest 1, 4 / 2 = 2 rest 0, 2 / 2 = 1 rest 0, 1 / 2 = 0 rest 1. Resultatet lest baklengs: 100101. Med 8 bits: 00100101.
Alternativt kan du bruke potensmetoden: finn den storste 2-potensen som gar inn i tallet, trekk den fra, og gjenta. 37 = 32 + 4 + 1 = 2^5 + 2^2 + 2^0 = 00100101.
Konvertering fra heksadesimal er enkel fordi hvert heksadesimalt siffer tilsvarer noyaktig 4 bits. For eksempel: (4E)_16 = 0100 1110. Hvert siffer konverteres uavhengig: 4 = 0100, E = 1110. For oktal tilsvarer hvert siffer 3 bits: (33)_8 = 011 011 = 00011011 (med 8 bits). Denne metoden er mye raskere enn a konvertere via desimal.
For a representere negative tall brukes 2-ers komplement. For a finne 2-ers komplement av et tall: (1) skriv tallet i binaert, (2) inverter alle bits (0 blir 1, 1 blir 0), (3) legg til 1. For eksempel: -26 med 8 bits: 26 = 00011010, invertert = 11100101, pluss 1 = 11100110. Tegnbiten (MSB) er 1 for negative tall og 0 for positive.
Rekkevidde for n bits i 2-ers komplement: fra -2^(n-1) til 2^(n-1) - 1. For 8 bits: -128 til 127. Storste positive tall med 8 bits i 2-ers komplement er altsa 127 (01111111).
Med n bits kan du representere 2^n forskjellige verdier. For eksempel: 12 bits gir 2^12 = 4096 forskjellige verdier. Omvendt: for a representere 500 forskjellige verdier trenger du minimum 9 bits (2^8 = 256 er for lite, 2^9 = 512 er nok).
Gjor om desimaltallet (37)_10 til 8 bits binaertall.
Losning med potensmetoden: 37 = 32 + 4 + 1 = 2^5 + 2^2 + 2^0. Sett 1 pa posisjon 5, 2 og 0: 00100101.
Gjor om (-26)_10 til 8 bits binaertall pa 2-ers komplement form.
Steg 1: 26 i binaer = 00011010. Steg 2: Inverter = 11100101. Steg 3: Legg til 1 = 11100110.
Nøkkelformler
Vanlige feil
Eksamenstips
Laster...