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 1111 0001 slaat een geheel getal met teken op in two's complement. Wat is de waarde N in decimaal?
Een systeem moet elk van 1013 items een eigen binaire code van gelijke lengte geven. Wat is het kleinste aantal bits b dat nodig is?
Is p → (p ∧ q) een tautologie, een contradictie of een contingentie? Klik op je antwoord.
De premissen a → c; a zijn gegeven. Welke conclusie volgt eruit? Klik erop.
Vereenvoudig F = ABC + AB′C + B′C′ tot zijn minimale som-van-productenvorm. Hoeveel literals L bevat de vereenvoudigde uitdrukking?
Bepaal voor F(A, B, C, D) = Σm(2, 3, 7, 9, 10, 12, 13, 14) + d(4, 5, 11), waarbij d de don’t-care-condities aangeeft, het aantal N essentiële priemimplicanten.
Vind de inverse van 8 modulo 11: het getal x met 0 < x < 11 en 8·x ≡ 1 (mod 11).
Gebruik herhaald kwadrateren om 2586 mod 92 te vinden.
Wat berekent het algoritme van Floyd-Warshall, en hoe snel?
Waarom is een opzoeking in een hashtabel gemiddeld O(1) maar in het slechtste geval O(n)?
Welk abstract datatype gebruikt het algoritme van Dijkstra om de volgende te verwerken knoop te kiezen?
Een segmentboom (segment tree) wordt doorgaans gebruikt om:
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 5 wordt vastgelegd (definitief gemaakt); A zelf is ronde 1.
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?
Waarom is SELECT dept, name, COUNT(*) FROM emp GROUP BY dept ongeldig in standaard-SQL?
Hoe lang duurt het om een pakket van 1500 bytes op een verbinding van 12 Mbit/s te zetten (transmissievertraging)?
Wat doet BGP voornamelijk op het internet?
Het netwerk 192.168.10.0/24 moet worden verdeeld in minstens 30 gelijke subnetten. Als je zo weinig mogelijk bits leent, hoeveel bruikbare hosts H heeft elk subnet?
Een host heeft het adres 10.20.179.220/26. Wat is het laatste getal (vierde octet) x van het broadcastadres van zijn subnet?
Antwoord: N = −15
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: b = 10 bit
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: contingentie
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: c
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 = 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: N = 1
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.
De grootste groepen die uit enen en X’en gevormd kunnen worden.
Antwoord: 8−1 mod 11 = 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·8 (mod 11).
Antwoord: 2586 mod 92 = 29
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 · Kortste paden tussen alle paren knopen in O(V³)
Floyd-Warshall is een algoritme voor dynamisch programmeren dat elke knoop om de beurt als tussenpunt toestaat en O(V³) tijd gebruikt.
Antwoord: C · Veel sleutels kunnen in dezelfde bucket botsen
Met een goede hashfunctie en bezettingsgraad (load factor) blijven buckets gemiddeld kort; kwaadwillende of slechte hashing kan alle sleutels in één bucket stoppen.
Antwoord: A · Een min-prioriteitswachtrij
Een min-prioriteitswachtrij, meestal een binaire heap, geeft efficiënt de onbezochte knoop met de kleinste afstand terug.
Antwoord: A · Bereikquery's (zoals bereiksommen) en updates in O(log n) te beantwoorden
Een segmentboom slaat aggregaten voor intervallen op en ondersteunt bereikquery's en puntupdates in O(log n) tijd.
Antwoord: Eulerpad, geen circuit
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.
Het Eulerpad begint bij het ene oneven hoekpunt en eindigt bij het andere.
Antwoord: D
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 · 5
Elke bestelling vindt precies één bijbehorende klant, dus de join geeft één rij per bestelling: 5 rijen.
Antwoord: C · 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: A · 1 ms
1500 bytes = 12,000 bits. 12,000 / 12,000,000 bit/s = 0,001 s = 1 ms. Transmissievertraging hangt af van pakketgrootte en verbindingssnelheid, niet van afstand.
Antwoord: D · Het wisselt routeringsinformatie uit tussen autonome systemen
BGP is het inter-domeinrouteringsprotocol; autonome systemen (AS) kondigen bereikbare prefixen aan en kiezen paden op basis van beleid (policies).
Antwoord: H = 6
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 = 255
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