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 −63 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 0100 OR 1011 1000. Wat is de waarde R van het resultaat in decimaal?
In hoeveel van de 8 rijen van zijn waarheidstabel is (¬r ∨ (q → p)) ∨ ¬(r ∨ (¬p ↔ q)) waar? Noem dit aantal N.
Welke uitspraak is equivalent met ¬∀x (P(x) → Q(x)), met de ontkenning helemaal naar binnen geschoven? Klik erop.
Een 4-naar-1-multiplexer heeft selectie-ingangen S₁ = A en S₀ = B, en data-ingangen gekoppeld aan I₀ = 1, I₁ = 1, I₂ = C, I₃ = C′. Voor hoeveel van de 8 combinaties van A, B en C is de uitgang F = 1? Bepaal N.
Een 3-bits binaire afloopteller begint bij 3 (decimaal, Q = 011). Welke stand Q (decimaal) toont hij na 25 klokpulsen?
Vind het kleinste positieve gehele getal x met x ≡ 6 (mod 8) en x ≡ 4 (mod 9).
Hoeveel oplossingen N heeft 60x ≡ 30 (mod 66) in {0, 1, …, 65}?
Een functie voert één lus van n iteraties uit en daarna, los daarvan, nog een lus van n iteraties. Wat is de tijdcomplexiteit?
Karatsuba-vermenigvuldiging voldoet aan T(n) = 3T(n/2) + O(n). Wat is de oplossing?
Een knoop in een binaire zoekboom heeft een rechtersubboom. Waar staat zijn inorder-opvolger?
Welk paar doorlopen bepaalt altijd een unieke binaire boom met verschillende sleutels?
Een samenhangende graaf heeft 8 hoekpunten en 18 kanten. Hoeveel kanten k moeten worden verwijderd om een opspannende boom over te houden?
Het algoritme van Dijkstra start bij A. Klik op het hoekpunt dat in ronde 3 wordt vastgelegd (definitief gemaakt); A zelf is ronde 1.
Wat biedt een common table expression (WITH name AS (...))?
Wat is een covering index voor een query?
Welk veld in de IPv4-header voorkomt dat pakketten eeuwig rondgaan in een routeringslus?
Wat regelt het ontvangstvenster (rwnd) in een TCP-verbinding?
Het netwerk 10.30.112.0/20 wordt verdeeld in gelijke subnetten met prefix /22. Hoeveel subnetten N zijn er?
Een router heeft routes naar deze netwerken: 10.106.194.0/24, 10.106.195.0/24. Wat is de langste prefixlengte p van één samenvattende route die ze allemaal dekt?
Antwoord: U = 193
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 = 252
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: N = 7
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: ∃x (P(x) ∧ ¬Q(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: N = 6
Multiplexer: een 2ⁿ-naar-1-multiplexer geeft één van zijn data-ingangen door aan de uitgang; de selectielijnen, gelezen als binair getal, kiezen welke. Voor een 4-naar-1-MUX met selecties S₁S₀ = AB is F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃. Door de data-ingangen aan 0, 1, C of C′ te koppelen, maakt de MUX elke functie van A, B en C, wat een veelgebruikte manier is om logica met één chip te bouwen.
Antwoord: Q = 2
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 8 pulsen brengen de teller terug in dezelfde toestand.
Antwoord: x = 22
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: N = 6
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 · O(n)
n + n = 2n, en constante factoren vallen weg, dus de functie is O(n).
Antwoord: C · Θ(nlog₂ 3), ongeveer n1,585
Omdat log₂ 3 ≈ 1,585 > 1, domineren volgens het mastertheorema de bladeren, wat beter is dan de O(n²) van de schoolmethode.
Antwoord: C · De meest linkse knoop van zijn rechtersubboom
Alle grotere sleutels dicht bij de knoop staan in zijn rechtersubboom, en de kleinste daarvan is de meest linkse knoop daar.
Antwoord: D · Preorder en inorder
Preorder geeft de wortel, en zijn positie in de inorder-reeks splitst de linker- en rechtersubboom; preorder met postorder is dubbelzinnig als een knoop één kind heeft.
Antwoord: k = 11
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: C
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: B · Een tijdelijk resultaat met een naam dat binnen één instructie kan worden gebruikt
Een CTE geeft een subquery een naam, wat complexe query's leesbaarder maakt, en er kan in dezelfde instructie meerdere keren naar worden verwezen.
Antwoord: B · Een index die alle kolommen bevat die de query nodig heeft, zodat de tabel zelf niet hoeft te worden gelezen
Als alle gebruikte kolommen in de index staan, kan het DBMS een index-only scan doen en het ophalen van tabelrijen overslaan, wat I/O bespaart.
Antwoord: D · Time to live (TTL)
Elke router verlaagt de TTL; bij nul wordt het pakket weggegooid en meestal een ICMP-bericht Time Exceeded verstuurd. IPv6 noemt het hop limit.
Antwoord: C · 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: N = 4
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 /22-subnet heeft 210 − 2 = 1022 bruikbare hosts.
Antwoord: p = 23
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.106.194.0/23
ExamProblems · examproblems.com/courses/computer-science-fundamentals