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 −41 opslaan in 8-bits tweecomplement. Wat is de waarde U van het patroon, gelezen als getal zonder teken?
Wat is het meest negatieve gehele getal N dat in 20-bits two's complement past?
Welke formule is logisch equivalent met q ∨ (p ∧ r)? Klik erop.
In hoeveel van de 16 rijen van de waarheidstabel is (r ∨ q) ↔ (p ∨ (r ∨ s)) waar? Noem dit aantal N.
Vereenvoudig F = ABC + AB + AB′C + BC′ tot zijn minimale som-van-productenvorm. Hoeveel literals L bevat de vereenvoudigde uitdrukking?
Een JK-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.
Los 29x ≡ 21 (mod 37) op. Geef de oplossing x met 0 < x < 37.
Versleutel het bericht m = 128 met de publieke RSA-sleutel (n, e) = (215, 19). Bepaal de cijfertekst c.
De ondergrens voor sorteren op basis van vergelijkingen in het slechtste geval is:
Welk algoritme vindt een minimaal opspannende boom door herhaaldelijk de goedkoopste kant toe te voegen die geen cyclus vormt?
Wat gebeurt er als een hashtabel rehasht nadat de load factor een drempel overschrijdt?
Wat zijn de tijd- en extra geheugenkosten van het ter plaatse omkeren van een enkelvoudig gekoppelde lijst?
Heeft de samenhangende graaf een Eulercircuit, een Eulerpad dat geen circuit is, of geen van beide? Klik op je antwoord.
Het algoritme van Dijkstra start bij A. Klik op het hoekpunt dat in ronde 6 wordt vastgelegd (definitief gemaakt); A zelf is ronde 1.
Welke instructie verwijdert alle rijen van een tabel, behoudt de structuur en kan geen WHERE-clausule hebben?
Wat is een phantom read?
Een signaal legt 2000 km door glasvezel af met ongeveer 2 × 10⁸ m/s. Wat is de propagatievertraging?
Een DNS-cache-poisoningaanval heeft als doel:
Een afdeling heeft 1382 hostadressen nodig in één subnet. Wat is de langste prefixlengte p (kleinste subnet) die groot genoeg is?
Een router heeft routes naar deze netwerken: 10.86.65.0/24, 10.86.66.0/24, 10.86.67.0/24, 10.86.68.0/24. Wat is de langste prefixlengte p van één samenvattende route die ze allemaal dekt?
Antwoord: U = 215
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 = −524288
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: (q ∨ p) ∧ (q ∨ r)
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).
De kolommen na de streep zijn de opties in de getoonde volgorde.
Antwoord: N = 12
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: L = 4
Booleaanse algebra: de regels die uitdrukkingen vereenvoudigen zijn X + X′ = 1 en X·X′ = 0, X + X = X, absorptie X + X·Y = X, de samenvoegregel X·Y + X·Y′ = X, X + X′Y = X + Y en de consensusstelling XY + X′Z + YZ = XY + X′Z. De wetten van De Morgan veranderen (X·Y)′ in X′ + Y′ en (X + Y)′ in X′·Y′. Een Karnaugh-kaart past deze regels grafisch toe: elke groep van twee naburige cellen is één toepassing van XY + XY′ = X.
Antwoord: klokflank 5
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 JK-flip-flop: 00 houdt vast, 01 reset (Q = 0), 10 zet (Q = 1), 11 wisselt.
Antwoord: x = 2
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: c = 42
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 · Ω(n log n)
Elk vergelijkingsgebaseerd sorteeralgoritme heeft in het slechtste geval minstens log₂(n!) ≈ n log n vergelijkingen nodig. Countingsort doet het beter omdat het niet vergelijkt.
Antwoord: C · Het algoritme van Kruskal
Kruskal sorteert kanten op gewicht en voegt ze toe als ze verschillende componenten verbinden; Prim laat één boom groeien vanuit een startknoop.
Antwoord: A · Er wordt een grotere tabel gereserveerd en elke sleutel wordt opnieuw ingevoegd
Omdat de index modulo de tabelgrootte wordt berekend, moeten alle sleutels opnieuw in de nieuwe, grotere tabel worden gehasht; bij verdubbelen blijft dit geamortiseerd O(1).
Antwoord: D · O(n) tijd en O(1) extra geheugen
Met drie pointers (vorige, huidige, volgende) kun je elke koppeling in één doorgang omkeren zonder nieuwe knopen te reserveren.
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: G
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: C · TRUNCATE TABLE
TRUNCATE maakt een tabel snel leeg en behoudt de definitie; DELETE kan geselecteerde rijen verwijderen, en DROP verwijdert de tabel zelf.
Antwoord: C · Een herhaalde query geeft nieuwe rijen terug die door een andere gecommitte transactie zijn ingevoegd
Phantoms ontstaan wanneer een andere transactie rijen invoegt die aan een bereikvoorwaarde voldoen; het isolatieniveau Serializable voorkomt ze.
Antwoord: A · 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: C · Een resolver een vals IP-adres voor een domein te laten opslaan
Poisoning voegt vervalste records toe aan de cache van een resolver. DNSSEC voegt handtekeningen toe zodat resolvers records kunnen verifiëren.
Antwoord: p = 21
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: p = 21
Routesamenvatting: een samenvattende route a.b.c.0/p dekt alle netwerken waarvan de eerste p bits overeenkomen. Schrijf het octet dat verschilt van het eerste en het laatste netwerk binair; het aantal gemeenschappelijke voorste bits, plus de bits van de octetten ervoor, is het langste samenvattende prefix.
Samenvattende route: 10.86.64.0/21 (die dekt ook 4 netwerk(en) die niet in de lijst staan).
ExamProblems · examproblems.com/courses/computer-science-fundamentals