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 1101 1000 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 1011 1011 >> 1. Wat is de waarde R van het resultaat in decimaal?
Is (q ∨ p) → (q ∧ p) een tautologie, een contradictie of een contingentie? Klik op je antwoord.
De redenering met premissen r → (q ∨ p); r en conclusie q 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) = Σm(3, 5, 6, 7) te vinden. Hoeveel somtermen (factoren) N heeft die?
Een D-flip-flop, getriggerd op de stijgende flank, begint met Q = 0 en krijgt bij 7 stijgende klokflanken de getoonde ingangen. Hoe vaak N verandert Q van toestand?
Vind de inverse van 23 modulo 71: het getal x met 0 < x < 71 en 23·x ≡ 1 (mod 71).
Los 18x ≡ 32 (mod 50) op. Geef de kleinste positieve oplossing x.
Welk algoritme vindt de kortste paden vanuit één bron in een graaf met niet-negatieve kantgewichten?
Het 0/1-knapzakprobleem opgelost met dynamisch programmeren kost O(nW) tijd. Waarom heet dit pseudo-polynomiaal?
Hoe lang duurt het zoeken naar een woord met lengte L in een trie met een vast alfabet?
Hoe verbetert een radix tree (gecomprimeerde trie) een gewone trie?
Een boom heeft 2 hoekpunten van graad 3, 2 hoekpunten van graad 5, en al zijn andere hoekpunten zijn bladeren (graad 1). Hoeveel bladeren L heeft hij?
Gebruik het algoritme van Dijkstra om de lengte d(E) van het kortste pad van A naar E in de gewogen graaf te vinden.
Een tabel employees heeft een kolom manager_id die naar een andere werknemer verwijst. Hoe toon je elke werknemer naast de naam van zijn manager?
Wat geeft het volgende terug: SELECT name FROM students WHERE grade > (SELECT AVG(grade) FROM students)?
Een signaal legt 2000 km door glasvezel af met ongeveer 2 × 10⁸ m/s. Wat is de propagatievertraging?
Een pad heeft een bandbreedte van 100 Mbit/s en een round-trip time van 40 ms. Hoeveel data moet onderweg zijn om het volledig te benutten?
Een subnet gebruikt het masker 255.255.254.0. Hoeveel bruikbare hostadressen H heeft het?
Een host heeft het adres 172.20.75.79/17. Wat is het derde octet x van het broadcastadres van zijn subnet?
Antwoord: N = −40
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 = 93
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: 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: p = 1, q = 0, r = 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: N = 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 D-flip-flop kopieert D bij elke stijgende flank: Q⁺ = D.
Antwoord: 23−1 mod 71 = 34
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·23 (mod 71).
Antwoord: x = 24
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 · Het algoritme van Dijkstra
Het algoritme van Dijkstra werkt met niet-negatieve gewichten; Bellman-Ford kan negatieve gewichten aan; Kruskal bouwt minimaal opspannende bomen.
Antwoord: C · W is een getal, dus de tijd is exponentieel in het aantal bits waarmee W wordt genoteerd
De looptijd is polynomiaal in de waarde van W maar exponentieel in de lengte ervan (log W bits); het 0/1-knapzakprobleem is NP-volledig.
Antwoord: B · O(L), onafhankelijk van hoeveel woorden er zijn opgeslagen
Elk teken kiest één kind, dus opzoeken kost L stappen, ongeacht hoeveel woorden de trie bevat.
Antwoord: A · Hij voegt ketens van knopen met één kind samen tot één kant met een string als label
Het samenvoegen van paden zonder vertakking vermindert het aantal knopen en het geheugengebruik, terwijl zoeken op prefix mogelijk blijft.
Antwoord: L = 10
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(E) = 12
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 · Koppel de tabel employees aan zichzelf met twee aliassen
Een self-join zoals FROM employees e JOIN employees m ON e.manager_id = m.id laat de ene alias de werknemer zijn en de andere de manager.
Antwoord: C · Studenten met een cijfer boven het gemiddelde cijfer
De scalaire subquery berekent het gemiddelde, en de buitenste query houdt de studenten daarboven over.
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 · 500 kB
Het bandbreedte-vertragingsproduct is 100 × 10⁶ bit/s × 0,04 s = 4 × 10⁶ bits = 500 kB. Het venster van de zender moet minstens zo groot zijn.
Antwoord: H = 510
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).
Antwoord: x = 127
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