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 1110 0010 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 1111 0010 >> 1. Wat is de waarde R van het resultaat in decimaal?
In hoeveel van de 8 rijen van zijn waarheidstabel is (¬q ∨ (r → ¬p)) ∧ ((¬p → q) ↔ r) waar? Noem dit aantal N.
De premissen r ∨ q; ¬r ∨ p zijn gegeven. Welke conclusie volgt eruit? Klik erop.
Gebruik de Karnaugh-kaart om de minimale som-van-productenvorm (SOP) van F(A, B, C) = Σm(3, 4, 5, 6, 7) te vinden. Hoeveel literals L bevat die in totaal (een variabele met accent telt als één literal)?
Een synchrone mod-11-teller telt 0, 1, …, 10 en keert dan terug naar 0. Hij begint bij 10. Welke stand Q (decimaal) toont hij na 18 klokpulsen?
Vind de inverse van 38 modulo 53: het getal x met 0 < x < 53 en 38·x ≡ 1 (mod 53).
Hoeveel oplossingen N heeft 20x ≡ 10 (mod 30) in {0, 1, …, 29}?
Quicksort gebruikt altijd het eerste element als pivot. Bij welke invoer vertoont het zijn worst-casegedrag?
Hoe detecteert het algoritme van Bellman-Ford een cykel met negatief gewicht die vanuit de bron bereikbaar is?
Een applicatie heeft snel opzoeken nodig en moet ook sleutels gesorteerd kunnen opsommen en bereikquery's beantwoorden. Welke structuur past het best?
Aan welke regel moeten hash en gelijkheid voldoen om een hashtabel correct te laten werken?
Een boom heeft 4 hoekpunten van graad 4, 3 hoekpunten van graad 5, 3 hoekpunten van graad 2, en al zijn andere hoekpunten zijn bladeren (graad 1). Hoeveel bladeren L heeft hij?
Gebruik het algoritme van Dijkstra om de lengte d(F) van het kortste pad van A naar F in de gewogen graaf te vinden.
Wat is SQL-injectie?
Waarom is SELECT dept, name, COUNT(*) FROM emp GROUP BY dept ongeldig in standaard-SQL?
Een signaal legt 2000 km door glasvezel af met ongeveer 2 × 10⁸ m/s. Wat is de propagatievertraging?
Head-of-line blocking bij HTTP/2 over TCP ontstaat doordat:
Een afdeling heeft 909 hostadressen nodig in één subnet. Wat is de langste prefixlengte p (kleinste subnet) die groot genoeg is?
Een host heeft het adres 10.20.20.122/29. Wat is het laatste getal (vierde octet) x van het broadcastadres van zijn subnet?
Antwoord: N = −30
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 = 121
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.
Naar rechts schuiven met 1 verplaatst elke bit 1 plaatsen naar rechts; bits die rechts uit beeld vallen gaan verloren en links komen nullen binnen.
Antwoord: N = 3
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: q ∨ p
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.
Antwoord: L = 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: Q = 6
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.
Elke 11 pulsen brengen de teller terug in dezelfde toestand.
Antwoord: 38−1 mod 53 = 7
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·38 (mod 53).
Antwoord: N = 10
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: A · Een array die al gesorteerd is
Bij gesorteerde invoer is de pivot altijd het minimum, dus de ene kant is leeg en de andere heeft n − 1 elementen, wat O(n²) geeft.
Antwoord: A · Na V − 1 rondes controleert het of er nog een kant kan worden gerelaxeerd
Alle echte kortste afstanden worden binnen V − 1 rondes gevonden; als een kant dan nog verbeterd kan worden, moet er een negatieve cykel bestaan.
Antwoord: A · Een gebalanceerde binaire zoekboom
Een gebalanceerde BST geeft opzoeken in O(log n) en houdt sleutels geordend, zodat een inorder-doorloop en bereikquery's eenvoudig zijn; een hashtabel verspreidt sleutels.
Antwoord: D · Gelijke sleutels moeten gelijke hashwaarden hebben
Als twee gelijke sleutels verschillend zouden hashen, zouden ze in verschillende buckets worden opgeslagen en zouden lookups mislukken; ongelijke sleutels mogen wel een hash delen.
Antwoord: L = 19
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.
Snelle methode: L = 2 + Σ (d − 2) over de hoekpunten met graad d ≥ 3.
Antwoord: d(F) = 19
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: B · Een aanval waarbij gebruikersinvoer de structuur van een SQL-query verandert
Als gebruikersinvoer aan SQL wordt vastgeplakt (concatenatie), kunnen aanvallers commando's injecteren. Prepared statements met parameters houden gegevens gescheiden van code.
Antwoord: A · name is niet gegroepeerd en niet geaggregeerd, dus het heeft geen enkele waarde per groep
Elke kolom in de SELECT-lijst moet in GROUP BY of binnen een aggregaat staan (of functioneel afhankelijk zijn van de groeperingskolommen); anders is de waarde dubbelzinnig.
Antwoord: B · 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: A · Een verloren TCP-segment alle gemultiplexte streams vertraagt totdat het opnieuw is verzonden
TCP levert bytes in volgorde af, dus één verlies houdt elke stream op de verbinding op. QUIC (HTTP/3) behandelt streams onafhankelijk van elkaar over UDP.
Antwoord: p = 22
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 = 127
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).
ExamProblems · examproblems.com/courses/computer-science-fundamentals