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.
Het 8-bits patroon 0101 0100 slaat een geheel getal met teken op in two's complement. Wat is de waarde N in decimaal?
Stel de bits in op het 8-bits resultaat van 0111 1010 OR 0110 1111. Wat is de waarde R van het resultaat in decimaal?
In hoeveel van de 8 rijen van zijn waarheidstabel is (¬p ∧ (¬r ∨ q)) → (r ↔ p) waar? Noem dit aantal N.
De redenering met premissen q ∨ p; q en conclusie ¬p is ongeldig. Klik op de rij van de waarheidstabel die een tegenvoorbeeld is.
Gebruik de Karnaugh-kaart om de minimale product-van-sommenvorm (POS) van F(A, B, C, D) = Σm(0, 2, 6, 7, 8, 9) te vinden. Hoeveel somtermen (factoren) N heeft die?
Een T-flip-flop, getriggerd op de stijgende flank, begint met Q = 0 en krijgt de getoonde ingangen. Klik op de eerste klokflank waarop Q van 1 terugkeert naar 0.
Vind de inverse van 16 modulo 25: het getal x met 0 < x < 25 en 16·x ≡ 1 (mod 25).
47 is een priemgetal. Gebruik de kleine stelling van Fermat om 1814448 mod 47 te vinden.
Je sorteert een array van n elementen één keer en beantwoordt daarna k lidmaatschapsvragen met binair zoeken. Wat zijn de totale kosten?
Wat is het verschil tussen een onbeslisbaar en een onhandelbaar probleem?
AVL-bomen en rood-zwartbomen garanderen:
Aan welke eigenschap moet een rood-zwartboom voldoen?
Een samenhangende graaf heeft 20 hoekpunten en 25 kanten. Hoeveel kanten k moeten worden verwijderd om een opspannende boom over te houden?
Gebruik het algoritme van Dijkstra om de lengte d(F) van het kortste pad van A naar F in de gewogen graaf te vinden.
De tabel orders heeft 5 rijen, die elk naar een bestaande klant verwijzen. De tabel customers heeft 3 rijen. Hoeveel rijen geeft een INNER JOIN op customer_id terug?
Hoe kunnen lezers met multiversion concurrency control (MVCC) voorkomen dat ze schrijvers blokkeren?
Een signaal legt 2000 km door glasvezel af met ongeveer 2 × 10⁸ m/s. Wat is de propagatievertraging?
Welk routeringsprotocol is een link-state-protocol?
Het netwerk 192.168.10.0/24 moet worden verdeeld in minstens 10 gelijke subnetten. Als je zo weinig mogelijk bits leent, hoeveel bruikbare hosts H heeft elk subnet?
Het netwerk 192.168.212.0/24 wordt met VLSM verdeeld over deze LAN’s: A: 31 hosts, B: 14 hosts, C: 4 hosts, D: 26 hosts, E: 17 hosts. Subnetten worden vanaf .0 omhoog toegewezen, het LAN met de meeste hosts eerst, elk met het kleinste subnet dat past. Wat is het vierde octet x van het netwerkadres van LAN D?
Antwoord: N = 84
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.
De andere bits houden hun gewone positieve waarde.
Antwoord: R = 127
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.
OR geeft 1 waar minstens één bit 1 is.
Antwoord: N = 7
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: p = 1, q = 1
Kwantoren en redeneringen: ¬∀x P(x) ≡ ∃x ¬P(x) en ¬∃x P(x) ≡ ∀x ¬P(x). Schuif een ontkenning naar binnen, verwissel elke kwantor die ze passeert en ontken de binnenste formule met de propositiewetten, zoals ¬(a → b) ≡ a ∧ ¬b. Een redenering is geldig als de conclusie 1 is in elke rij waarin alle premissen 1 zijn. Eén rij met ware premissen en een onware conclusie is een tegenvoorbeeld en toont aan dat de redenering ongeldig is.
Een redenering van deze vorm lijkt op een geldige regel, maar één rij is genoeg om te laten zien dat dat niet zo is.
Antwoord: N = 3
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.
Elke groep is een rechthoek van 2ᵏ cellen; randcellen zijn buren van de cellen op de tegenoverliggende rand.
Antwoord: klokflank 3
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.
Een T-flip-flop wisselt bij elke stijgende flank met T = 1 en houdt vast met T = 0.
Antwoord: 16−1 mod 25 = 11
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).
Elke rest r wordt geschreven als r ≡ t·16 (mod 25).
Antwoord: 1814448 mod 47 = 25
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: A · O(n log n + k log n)
Sorteren kost O(n log n) en elke vraag O(log n); dat is beter dan k lineaire zoektochten (O(nk)) als k groot is.
Antwoord: C · Een onbeslisbaar probleem heeft geen algoritme voor alle invoer; een onhandelbaar probleem wel, maar dat is te traag
Voor het stopprobleem bestaat helemaal geen algoritme; een NP-moeilijk probleem zoals TSP kan met brute force worden opgelost, alleen niet in een bekende polynomiale tijd.
Antwoord: D · Een hoogte van O(log n) door herbalancering
Zelfbalancerende bomen houden de hoogte logaritmisch, zodat zoeken, invoegen en verwijderen in het slechtste geval O(log n) zijn.
Antwoord: C · Elk pad van een knoop naar zijn afstammende bladeren bevat evenveel zwarte knopen
Rood-zwartregels: knopen zijn rood of zwart, de wortel is zwart, rode knopen hebben zwarte kinderen en alle paden hebben dezelfde zwarthoogte, waardoor de hoogte ≤ 2 log₂(n + 1) blijft.
Antwoord: k = 6
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: d(F) = 17
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.
Elke regel: het vastgelegde hoekpunt, zijn definitieve afstand en de buren waarvan de afstand verbetert.
Antwoord: C · 5
Elke bestelling vindt precies één bijbehorende klant, dus de join geeft één rij per bestelling: 5 rijen.
Antwoord: B · Lezers zien een consistente momentopname van gecommitte rijversies, terwijl schrijvers nieuwe versies maken
MVCC bewaart oude rijversies, zodat een lezer de gegevens kan zien zoals ze bij zijn snapshot waren, terwijl een schrijver een nieuwe versie maakt in plaats van ter plaatse te overschrijven.
Antwoord: C · 10 ms
2 × 10⁶ m / 2 × 10⁸ m/s = 0,01 s = 10 ms. Propagatievertraging hangt af van afstand en medium, niet van pakketgrootte.
Antwoord: D · OSPF
OSPF-routers bouwen een volledige kaart van het gebied en berekenen de kortste paden met het algoritme van Dijkstra. RIP is distance-vector; BGP is path-vector.
Antwoord: H = 14
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 = 64
VLSM: elk LAN krijgt het kleinste subnet met 2ʰ − 2 ≥ het aantal hosts, dus prefix 32 − h. Door de grootste subnetten eerst toe te wijzen begint elk blok op een veelvoud van zijn eigen grootte, zodat de netwerkadressen volgen door de blokgroottes op te tellen.
LAN D: 192.168.212.64/27.
ExamProblems · examproblems.com/courses/computer-science-fundamentals