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 −107 opslaan in 8-bits tweecomplement. Wat is de waarde U van het patroon, gelezen als getal zonder teken?
Wat is het grootste gehele getal zonder teken N dat in 12 bits past?
Je wilt a → (c ∧ b) bewijzen met de contrapositie. Welke implicatie bewijs je in plaats daarvan? Klik erop.
Welke uitspraak is equivalent met ¬∃x (F(x) → G(x)), met de ontkenning helemaal naar binnen geschoven? Klik erop.
Gebruik de Karnaugh-kaart om de minimale som-van-productenvorm (SOP) van F(A, B, C, D) = Σm(0, 3, 5, 6, 7, 9, 10, 12, 15) te vinden. Hoeveel literals L bevat die in totaal (een variabele met accent telt als één literal)?
Bepaal voor F(A, B, C, D) = Σm(1, 2, 3, 6, 7, 8, 10, 12, 13, 14, 15) + d(0, 4), waarbij d de don’t-care-condities aangeeft, het aantal N essentiële priemimplicanten.
Vind de inverse van 48 modulo 67: het getal x met 0 < x < 67 en 48·x ≡ 1 (mod 67).
61 is een priemgetal. Gebruik de kleine stelling van Fermat om 2538999 mod 61 te vinden.
De tijdcomplexiteit van naïef recursief Fibonacci (fib(n) = fib(n−1) + fib(n−2)) is:
Welke twee dingen moeten worden aangetoond om te bewijzen dat een beslissingsprobleem X NP-volledig is?
Welke datastructuur gebruikt diepte-eerst zoeken (DFS) in de iteratieve versie?
Welk probleem van linear probing vermindert double hashing vooral?
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.
Wat betekent de functionele afhankelijkheid A → B?
Welke vensterfunctie kent binnen elke partitie 1, 2, 3, ... toe aan rijen, zonder gelijke standen?
Wat is het netwerkadres van de host 192.168.10.77/26?
Wat regelt het ontvangstvenster (rwnd) in een TCP-verbinding?
Het netwerk 192.168.10.0/24 moet worden verdeeld in minstens 12 gelijke subnetten. Als je zo weinig mogelijk bits leent, hoeveel bruikbare hosts H heeft elk subnet?
Een router heeft routes naar deze netwerken: 10.80.156.0/24, 10.80.157.0/24, 10.80.158.0/24, 10.80.159.0/24, 10.80.160.0/24, 10.80.161.0/24, 10.80.162.0/24. Wat is de langste prefixlengte p van één samenvattende route die ze allemaal dekt?
Antwoord: U = 149
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 = 4095
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: ¬(c ∧ b) → ¬a
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 contrapositie is equivalent met de oorspronkelijke uitspraak, dus door haar te bewijzen bewijs je de uitspraak.
Antwoord: ∀x (F(x) ∧ ¬G(x))
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: L = 28
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 = 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.
De grootste groepen die uit enen en X’en gevormd kunnen worden.
Antwoord: 48−1 mod 67 = 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·48 (mod 67).
Antwoord: 2538999 mod 61 = 22
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 · Exponentieel
De aanroepboom groeit ongeveer als φⁿ (ongeveer 1,618ⁿ). Memoisatie brengt dit terug tot O(n).
Antwoord: C · X zit in NP, en een bekend NP-volledig probleem reduceert in polynomiale tijd tot X
Lidmaatschap van NP laat zien dat X niet moeilijker is dan NP; de reductie vanuit een bekend NP-volledig probleem laat zien dat X minstens zo moeilijk is als heel NP.
Antwoord: C · Een stack
DFS gaat zo diep mogelijk en gebruikt daardoor vanzelf een stack (of de call stack van de recursie); BFS gebruikt een queue.
Antwoord: A · Primaire clustering, waarbij lange reeksen bezette plaatsen ontstaan
Linear probing zet stappen van 1, zodat bezette reeksen groeien en samensmelten; double hashing gebruikt een tweede hash voor de stapgrootte, zodat verschillende sleutels verschillende reeksen aftasten.
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) = 18
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 · Elke waarde van A hoort bij precies één waarde van B
A → B betekent dat twee rijen met dezelfde waarde van A dezelfde waarde van B moeten hebben; A bepaalt B.
Antwoord: D · ROW_NUMBER()
ROW_NUMBER geeft unieke opeenvolgende nummers; RANK laat gaten na gelijke standen; DENSE_RANK niet.
Antwoord: A · 192.168.10.64
/26-subnets beginnen bij 0, 64, 128 en 192. 77 ligt in het blok 64–127, dus het netwerkadres is 192.168.10.64.
Antwoord: B · Hoeveel onbevestigde data de zender mag versturen, op basis van de buffer van de ontvanger
De ontvanger meldt hoeveel bufferruimte hij heeft; de zender beperkt de onbevestigde data dienovereenkomstig, zodat de ontvanger niet overbelast raakt.
Antwoord: H = 14
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 = 18
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.80.128.0/18 (die dekt ook 57 netwerk(en) die niet in de lijst staan).
ExamProblems · examproblems.com/courses/computer-science-fundamentals