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 −95 opslaan in 8-bits tweecomplement. Wat is de waarde U van het patroon, gelezen als getal zonder teken?
Stel de bits in op het 8-bits resultaat van 0101 0101 OR 1011 1101. Wat is de waarde R van het resultaat in decimaal?
Welke formule is logisch equivalent met ¬(c ∧ b)? Klik erop.
Welke uitspraak is equivalent met ¬∀x ∃y R(x, y), met de ontkenning helemaal naar binnen geschoven? Klik erop.
Gebruik de Karnaugh-kaart om de minimale product-van-sommenvorm (POS) van F(A, B, C, D) = Σm(0, 1, 2, 11, 13) te vinden. Hoeveel somtermen (factoren) N heeft die?
Bepaal de minimale SOP-vorm van F(A, B, C, D) = Σm(1, 2, 5, 6, 9, 11, 13, 14) + d(7, 10, 12, 15), waarbij d de don’t-care-condities aangeeft. Hoeveel literals L bevat die?
Vind de inverse van 21 modulo 59: het getal x met 0 < x < 59 en 21·x ≡ 1 (mod 59).
Een RSA-sleutel gebruikt p = 11, q = 29 en e = 19. Ontsleutel de cijfertekst c = 71: bepaal het bericht m.
Hoe bouwt het algoritme van Prim een minimale opspannende boom?
Kortste enkelvoudige paden kunnen in polynomiale tijd worden gevonden. Wat is bekend over het vinden van het langste enkelvoudige pad tussen twee knopen in een algemene graaf?
Een applicatie heeft snel opzoeken nodig en moet ook sleutels gesorteerd kunnen opsommen en bereikquery's beantwoorden. Welke structuur past het best?
Je wilt voor elk element van een array het volgende grotere element rechts ervan vinden, in totaal O(n) tijd. Welke structuur helpt?
Heeft de samenhangende graaf een Eulercircuit, een Eulerpad dat geen circuit is, of geen van beide? Klik op je antwoord.
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?
Twee transacties lezen allebei stock = 10, trekken er elk 1 van af en schrijven het resultaat weg, wat 9 oplevert in plaats van 8. Welke anomalie is dit?
HTTP is stateless. Hoe houden websites een gebruiker meestal ingelogd over meerdere verzoeken?
Hoe verbetert een content delivery network (CDN) vooral de webprestaties?
Het netwerk 10.23.63.0/24 wordt verdeeld in gelijke subnetten met prefix /28. Hoeveel subnetten N zijn er?
Het netwerk 192.168.71.0/24 wordt met VLSM verdeeld over deze LAN’s: A: 7 hosts, B: 45 hosts, C: 88 hosts, D: 19 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 B?
Antwoord: U = 161
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: R = 253
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: ¬c ∨ ¬b
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: ∃x ∀y ¬R(x, y)
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.
De andere opties laten een kwantor onveranderd, veranderen de volgorde van de kwantoren, of ontkennen de binnenste formule verkeerd.
Antwoord: N = 5
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: L = 6
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.
Er bestaat een andere groepering van dezelfde grootte; die heeft hetzelfde aantal termen en literals.
Antwoord: 21−1 mod 59 = 45
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·21 (mod 59).
Antwoord: m = 196
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 · Het laat één boom groeien vanaf een startknoop en voegt de goedkoopste kant toe die de boom verlaat
Het algoritme van Prim, met een prioriteitswachtrij van kruisende kanten, loopt met een binaire heap in O(E log V).
Antwoord: C · Het is NP-moeilijk
Een langste enkelvoudig pad van lengte V − 1 is een hamiltonpad, een NP-volledig probleem; op gerichte acyclische grafen is het echter in lineaire tijd oplosbaar.
Antwoord: C · 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 · Een stack die elementen bewaart die op hun antwoord wachten
Loop van links naar rechts, pop elk element op de stack dat kleiner is dan het huidige (het huidige element is hun antwoord) en push dan het huidige; elk element wordt hoogstens twee keer verplaatst.
Antwoord: geen van beide
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) = 21
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 · 5
Elke bestelling vindt precies één bijbehorende klant, dus de join geeft één rij per bestelling: 5 rijen.
Antwoord: C · Lost update
Bij een lost update werken beide transacties met dezelfde oude waarde en wist de tweede schrijfactie de eerste uit; vergrendelen (SELECT ... FOR UPDATE) of atomaire updates voorkomen dit.
Antwoord: A · Met cookies die een sessie-ID of token bevatten
De server zet een cookie met een sessie-ID of token, en de browser stuurt die bij elk verzoek terug zodat de server de gebruiker herkent.
Antwoord: D · Het levert gecachte content vanaf servers dicht bij de gebruikers
CDN's plaatsen kopieën van content op veel edgelocaties en leiden gebruikers, vaak via DNS, naar een nabije server. Dat verlaagt de latency en de belasting van de oorspronkelijke server.
Antwoord: N = 16
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).
Elk /28-subnet heeft 24 − 2 = 14 bruikbare hosts.
Antwoord: x = 128
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 B: 192.168.71.128/26.
ExamProblems · examproblems.com/courses/computer-science-fundamentals