Talstelsels
- Plaatswaarden
- binair 2k, octaal 8k, hex 16k
- Naar decimaal
- Σ dk·bk
- Vanuit decimaal
- deel door het grondtal en lees de resten van onder naar boven
- Hex ↔ binair
- één hexcijfer = 4 bits
- Two's complement
- inverteer de bits en tel 1 op
Formuleoverzichten, de belangrijkste methodestappen voor elk onderwerp en 20 oefenopgaven, met volledige oplossingen achterin.
Stel de bits zo in dat ze −98 opslaan in 8-bits tweecomplement. Wat is de waarde U van het patroon, gelezen als getal zonder teken?
Wat is het grootste gehele getal zonder teken N dat in 16 bits past?
Is (a → b) ↔ (¬b → ¬a) een tautologie, een contradictie of een contingentie? Klik op je antwoord.
In hoeveel van de 16 rijen van de waarheidstabel is ((¬b → d) ∧ c) ∨ ((b → ¬a) ∧ ¬a) waar? Noem dit aantal N.
In deze Karnaugh-kaart heeft precies één 1 geen naburige 1, dus hij blijft een groep van één cel (een volledige minterm van vier literals) in de minimale SOP-vorm. Buren over de randen van de kaart tellen mee. Klik op die cel.
Een 4-bits ringteller Q₃Q₂Q₁Q₀ begint bij 1001. Bij elke klokflank schuiven de bits één plaats naar rechts (Q₃ → Q₂ → Q₁ → Q₀) en krijgt Q₃ de waarde van Q₀. Geef de toestand Q = Q₃Q₂Q₁Q₀ als decimaal getal na 9 klokflanken.
Vind het kleinste positieve gehele getal x met x ≡ 9 (mod 10) en x ≡ 2 (mod 13).
Een RSA-sleutel gebruikt p = 17, q = 23 en e = 5. Ontsleutel de cijfertekst c = 234: bepaal het bericht m.
Een functie voert één lus van n iteraties uit en daarna, los daarvan, nog een lus van n iteraties. Wat is de tijdcomplexiteit?
Waarom kan het algoritme van Dijkstra verkeerde resultaten geven als sommige kantgewichten negatief zijn?
Hoeveel geheugen gebruikt een adjacentiematrix voor een graaf met V knopen?
In een circulaire buffer kan front == rear zowel leeg als vol betekenen. Wat is een gangbare manier om ze te onderscheiden?
Heeft de samenhangende graaf een Eulercircuit, een Eulerpad dat geen circuit is, of geen van beide? Klik op je antwoord.
Bepaal het totale gewicht W van een minimaal opspannende boom van de gewogen graaf.
Waar staat de "A" in ACID voor?
Tabel b bevat in kolom y de waarden 1, 2 en NULL. Wat geeft SELECT * FROM a WHERE x NOT IN (SELECT y FROM b) terug?
Wat identificeert één eindpunt van een TCP-verbinding op het internet uniek?
Welk van deze adressen is een publiek (geen privé-RFC 1918-)IPv4-adres?
Het netwerk 192.168.10.0/24 moet worden verdeeld in minstens 8 gelijke subnetten. Als je zo weinig mogelijk bits leent, hoeveel bruikbare hosts H heeft elk subnet?
Een host heeft het adres 172.20.237.196/22. Wat is het derde octet x van zijn netwerkadres?
Antwoord: U = 158
Bits instellen: elke bit is een macht van twee waard (128, 64, …, 1). Eén hexadecimaal cijfer is precies vier bits, en in 8-bits tweecomplement is de meest linkse bit −128 waard. Bitsgewijze bewerkingen werken op elke bitpositie apart.
Antwoord: N = 65535
Positionele talstelsels: elk cijfer is zijn waarde maal een macht van het grondtal waard. Binair zijn de posities 1, 2, 4, 8, 16, … waard, hexadecimaal 1, 16, 256, …, met A–F voor 10–15. In 8-bits two's complement is het meest linkse bit −128 waard in plaats van +128; zo worden negatieve getallen opgeslagen.
Antwoord: tautologie
Logische equivalentie: twee formules zijn equivalent (≡) als ze in elke rij van de waarheidstabel dezelfde waarde hebben. Een tautologie is in elke rij 1, een contradictie in elke rij 0, en een contingentie is geen van beide. Nuttige wetten: De Morgan, ¬(a ∧ b) ≡ ¬a ∨ ¬b en ¬(a ∨ b) ≡ ¬a ∧ ¬b; a → b ≡ ¬a ∨ b ≡ ¬b → ¬a (contrapositie); ¬(a → b) ≡ a ∧ ¬b; en de distributieve wetten, a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).
Antwoord: N = 11
Waarheidstabellen: een formule met n verschillende variabelen heeft 2ⁿ rijen, één voor elke combinatie van waarheidswaarden (1 = waar, 0 = onwaar). Werk van binnen naar buiten en geef elke deelformule een eigen kolom. ¬a draait de waarde om; a ∧ b is alleen 1 als beide 1 zijn; a ∨ b is alleen 0 als beide 0 zijn; a → b is alleen 0 als a = 1 en b = 0; a ↔ b is 1 als beide kanten gelijk zijn.
Antwoord: AB = 01, CD = 10
Karnaugh-kaarten: de cellen staan in Gray-code (00, 01, 11, 10), dus naburige cellen, ook die over de randen heen, verschillen in precies één variabele. Groepeer de enen in rechthoeken van 1, 2, 4, 8 of 16 cellen, zo groot en zo weinig mogelijk, totdat elke 1 gedekt is. Elke groep is één productterm: de variabelen die erin constant blijven. Een groep van 2ᵏ cellen verliest k variabelen. Don’t-cares (X) mogen worden gebruikt om groepen groter te maken maar hoeven nooit gedekt te worden. Groepeer je in plaats daarvan de nullen, dan krijg je de minimale POS-vorm.
Een 1 met een naburige 1 kan deel uitmaken van een groep van twee of meer.
Antwoord: Q = 12
Flip-flops en tellers: een flip-flop verandert alleen op de actieve klokflank. D kopieert zijn ingang (Q⁺ = D); T wisselt als T = 1; JK houdt vast bij 00, reset bij 01, zet bij 10 en wisselt bij 11. Een n-bits binaire teller heeft 2ⁿ toestanden en telt modulo 2ⁿ; een mod-N-teller telt 0, 1, …, N − 1 en dan weer 0, en heeft de kleinste n met 2ⁿ ≥ N flip-flops nodig. Elke trap van een ripple-teller halveert de frequentie, dus de laatste uitgang van een mod-N-teller loopt op fklok/N. Een Johnson-teller van n flip-flops heeft 2n toestanden, een ringteller n.
Antwoord: x = 119
Inversen en congruenties: a heeft een inverse modulo n precies als ggd(a, n) = 1. Het uitgebreide algoritme van Euclides schrijft 1 = s·n + t·a, en dan is a⁻¹ ≡ t (mod n). Een congruentie a·x ≡ b (mod n) met ggd(a, n) = 1 heeft de oplossing x ≡ a⁻¹·b. Twee congruenties x ≡ r₁ (mod m₁) en x ≡ r₂ (mod m₂) met onderling ondeelbare moduli hebben één oplossing modulo m₁·m₂ (Chinese reststelling). Eulers φ(n) telt de getallen van 1 tot n die onderling ondeelbaar zijn met n: φ(n) = n·∏(1 − 1/p).
Antwoord: m = 13
Modulaire machten en RSA: bereken aᵏ mod n door herhaald kwadrateren: schrijf k binair, kwadrateer, reduceer na elke stap en vermenigvuldig de machten waarvan de bit 1 is. Fermat: aᵖ⁻¹ ≡ 1 (mod p) voor een priemgetal p dat a niet deelt, dus de exponent kan modulo p − 1 gereduceerd worden. RSA: kies priemgetallen p en q, n = p·q en φ(n) = (p − 1)(q − 1); de publieke exponent e is onderling ondeelbaar met φ(n), en de privé-exponent is d = e⁻¹ mod φ(n). Versleutel met c = mᵉ mod n en ontsleutel met m = cᵈ mod n.
Antwoord: D · O(n)
n + n = 2n, en constante factoren vallen weg, dus de functie is O(n).
Antwoord: A · Een knoop is definitief zodra hij wordt uitgehaald, maar een latere negatieve kant kan hem nog een korter pad geven
De gulzige stap rekent op niet-negatieve gewichten, zodat uitgehaalde afstanden definitief zijn; Bellman-Ford wordt gebruikt als gewichten negatief kunnen zijn.
Antwoord: A · O(V²)
Een adjacentiematrix slaat V × V elementen op, efficiënt voor dichte grafen; adjacentielijsten gebruiken O(V + E), beter voor ijle grafen.
Antwoord: C · Houd een apart aantal elementen bij, of laat altijd één plaats ongebruikt
Met een teller betekent leeg count = 0 en vol count = capaciteit; met één lege plaats wordt vol gedefinieerd als (rear + 1) mod n == front.
Antwoord: Eulercircuit
Euler, Hamilton en bomen: een samenhangende graaf heeft een Eulercircuit (elke kant één keer, terug naar het begin) als elk hoekpunt even graad heeft, en een Eulerpad dat geen circuit is als precies twee hoekpunten oneven graad hebben; het pad loopt dan van het ene oneven hoekpunt naar het andere. Een Hamiltoncircuit bezoekt elk hoekpunt één keer; Kn heeft er (n − 1)!/2. Een boom op n hoekpunten heeft n − 1 kanten, en een samenhangende graaf met m kanten houdt een opspannende boom over na het verwijderen van m − n + 1 kanten.
Antwoord: W = 36
Kortste paden en opspannende bomen: het algoritme van Dijkstra legt per ronde één hoekpunt vast: het onafgehandelde hoekpunt met de kleinste voorlopige afstand. Zijn afstand is dan definitief, en elke buur v krijgt d(v) = min(d(v), d(u) + w(u, v)). Het algoritme van Kruskal bouwt een minimaal opspannende boom door de kanten van licht naar zwaar te nemen en elke kant over te slaan die een cykel zou sluiten; het algoritme van Prim laat één boom groeien vanuit een beginpunt door steeds de lichtste kant toe te voegen die eruit vertrekt. Een opspannende boom van n hoekpunten heeft n − 1 kanten.
Antwoord: D · Atomicity (atomiciteit)
ACID: atomiciteit, consistentie, isolatie, duurzaamheid. Atomiciteit betekent dat een transactie volledig of helemaal niet wordt uitgevoerd.
Antwoord: C · Helemaal geen rijen
De vergelijking met NULL is UNKNOWN, dus de hele voorwaarde is nooit TRUE; NOT EXISTS of het wegfilteren van NULL's voorkomt deze valkuil.
Antwoord: B · Een IP-adres samen met een poortnummer
Een TCP-verbinding wordt geïdentificeerd door bron-IP en -poort plus bestemmings-IP en -poort. Poorten onderscheiden de vele applicaties op één host.
Antwoord: B · 172.32.0.1
172.16.0.0/12 loopt van 172.16.0.0 tot 172.31.255.255, dus 172.32.0.1 valt erbuiten. De andere drie liggen in privébereiken.
Antwoord: H = 30
IPv4-subnetting: een adres heeft 32 bits. Het prefix /p geeft aan hoeveel voorste bits het netwerk aanduiden; de overige 32 − p bits nummeren de hosts. Een subnet heeft 2³²⁻ᵖ adressen, maar het eerste (netwerkadres) en het laatste (broadcastadres) kunnen niet aan hosts worden gegeven, dus er passen 2³²⁻ᵖ − 2 hosts in. Uitzonderingen: een /31 (point-to-pointverbinding, RFC 3021) gebruikt allebei zijn 2 adressen voor hosts, en een /32 is één enkel adres (één host of een loopback).
Antwoord: x = 236
IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).
ExamProblems · examproblems.com/courses/computer-science-fundamentals