Number systems
- Place values
- binary 2k, octal 8k, hex 16k
- To decimal
- Σ dk·bk
- From decimal
- divide by the base, read the remainders bottom-up
- Hex ↔ binary
- one hex digit = 4 bits
- Two’s complement
- invert the bits and add 1
Formula sheets, the key method steps for every topic and 20 practice problems, with full solutions at the back.
Write −105 as an 8-bit two's complement pattern. Read the pattern as an unsigned binary number: what is its value U in decimal?
An uncompressed image is 640 × 480 pixels with 8 bits per pixel. How much memory M does it take, in KiB (1 KiB = 1024 bytes)?
You want to prove (a ∨ c) → ¬b by contradiction. Which statement do you assume at the start? Click it.
The argument with premises q ∨ r; q and conclusion ¬r is invalid. Click the row of the truth table that is a counterexample.
A 4-to-1 multiplexer has its select inputs S₁ = A and S₀ = B, and its data inputs tied to I₀ = 0, I₁ = 1, I₂ = C′, I₃ = C. For how many of the 8 combinations of A, B and C is the output F = 1? Find N.
A 4-bit Johnson counter Q₃Q₂Q₁Q₀ starts at 0000. At every clock edge the bits shift one place to the right (Q₃ → Q₂ → Q₁ → Q₀) and Q₃ receives the inverse of Q₀. Give the state Q = Q₃Q₂Q₁Q₀ as a decimal number after 10 clock edges.
Find the inverse of 42 modulo 67: the number x with 0 < x < 67 and 42·x ≡ 1 (mod 67).
An RSA key uses the primes p = 13 and q = 37 and the public exponent e = 23. Find the private exponent d (0 < d < φ(n)).
Quicksort always uses the first element as pivot. On which input does it show its worst-case behaviour?
Using the master theorem, T(n) = 8T(n/2) + O(n²) solves to:
A queue is implemented with two stacks: push onto an "in" stack, and pop from an "out" stack, refilling it from "in" when empty. What is the amortised cost per operation?
In a circular buffer, front == rear can mean either empty or full. What is a common way to tell them apart?
How many different Hamilton circuits H does the complete graph K4 have? Circuits that differ only in the starting vertex or the direction count as the same.
Prim’s algorithm builds a minimum spanning tree starting from vertex D. Click the edge it adds as edge number 2.
What does a common table expression (WITH name AS (...)) provide?
What is the result of SELECT COUNT(col) FROM t if all values in col are NULL and the table has 10 rows?
Which metric does RIP use to choose routes?
A user can ping 8.8.8.8 but cannot open any website by name. Where is the problem most likely?
The network 172.26.0.0/16 is divided into equal subnets with prefix /22. How many subnets N are there?
The network 192.168.245.0/24 is split with VLSM for these LANs: A: 16 hosts, B: 9 hosts, C: 12 hosts, D: 6 hosts, E: 41 hosts. Subnets are allocated from .0 upwards, the LAN with the most hosts first, each with the smallest subnet that fits. What is the fourth octet x of the network address of LAN C?
Answer: U = 151
Positional number systems: each digit is worth its value times a power of the base. In binary the places are worth 1, 2, 4, 8, 16, …; in hexadecimal 1, 16, 256, …, with A–F standing for 10–15. In 8-bit two's complement the leftmost bit is worth −128 instead of +128, which is how negative numbers are stored.
Answer: M = 300 KiB
Positional number systems: each digit is worth its value times a power of the base. In binary the places are worth 1, 2, 4, 8, 16, …; in hexadecimal 1, 16, 256, …, with A–F standing for 10–15. In 8-bit two's complement the leftmost bit is worth −128 instead of +128, which is how negative numbers are stored.
Answer: (a ∨ c) ∧ ¬¬b
Logical equivalence: two formulas are equivalent (≡) when they have the same value in every row of the truth table. A tautology is 1 in every row, a contradiction is 0 in every row, and a contingency is neither. Useful laws: De Morgan, ¬(a ∧ b) ≡ ¬a ∨ ¬b and ¬(a ∨ b) ≡ ¬a ∧ ¬b; a → b ≡ ¬a ∨ b ≡ ¬b → ¬a (contrapositive); ¬(a → b) ≡ a ∧ ¬b; and the distributive laws, a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).
If the assumption leads to a contradiction, the implication must be true.
Answer: q = 1, r = 1
Quantifiers and arguments: ¬∀x P(x) ≡ ∃x ¬P(x) and ¬∃x P(x) ≡ ∀x ¬P(x). Move a negation inwards, swap every quantifier it passes, and negate the inner formula with the propositional laws, such as ¬(a → b) ≡ a ∧ ¬b. An argument is valid when the conclusion is 1 in every row in which all premises are 1. A single row with true premises and a false conclusion is a counterexample and shows the argument is invalid.
An argument with this form looks like a valid rule, but one row is enough to show that it is not.
Answer: N = 4
Multiplexer: a 2ⁿ-to-1 multiplexer passes one of its data inputs to the output; the select lines, read as a binary number, pick which one. For a 4-to-1 MUX with selects S₁S₀ = AB, F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃. Tying the data inputs to 0, 1, C or C′ makes the MUX produce any function of A, B and C, which is a common way to build logic with one chip.
Answer: Q = 12
Flip-flops and counters: a flip-flop changes only at the active clock edge. D copies its input (Q⁺ = D); T toggles when T = 1; JK holds for 00, resets for 01, sets for 10 and toggles for 11. An n-bit binary counter has 2ⁿ states and counts modulo 2ⁿ; a mod-N counter goes 0, 1, …, N − 1 and back to 0, and needs the smallest n with 2ⁿ ≥ N flip-flops. Each stage of a ripple counter halves the frequency, so the last output of a mod-N counter runs at fclk/N. A Johnson counter of n flip-flops has 2n states, a ring counter n.
Answer: 42−1 mod 67 = 8
Inverses and congruences: a has an inverse modulo n exactly when gcd(a, n) = 1. The extended Euclidean algorithm writes 1 = s·n + t·a, and then a⁻¹ ≡ t (mod n). A congruence a·x ≡ b (mod n) with gcd(a, n) = 1 has the solution x ≡ a⁻¹·b. Two congruences x ≡ r₁ (mod m₁) and x ≡ r₂ (mod m₂) with coprime moduli have one solution modulo m₁·m₂ (Chinese remainder theorem). Euler’s φ(n) counts the numbers from 1 to n that are coprime to n: φ(n) = n·∏(1 − 1/p).
Each remainder r is written as r ≡ t·42 (mod 67).
Answer: d = 263
Modular powers and RSA: compute aᵏ mod n by repeated squaring: write k in binary, square, reduce after every step and multiply the powers whose bit is 1. Fermat: aᵖ⁻¹ ≡ 1 (mod p) for a prime p not dividing a, so the exponent can be reduced modulo p − 1. RSA: choose primes p and q, n = p·q and φ(n) = (p − 1)(q − 1); the public exponent e is coprime to φ(n), and the private exponent is d = e⁻¹ mod φ(n). Encrypt with c = mᵉ mod n and decrypt with m = cᵈ mod n.
Answer: D · An array that is already sorted
On sorted input the pivot is always the minimum, so one side is empty and the other has n − 1 elements, giving O(n²).
Answer: C · Θ(n³)
log₂ 8 = 3, and n² grows slower than n³, so the leaves dominate: Θ(n³).
Answer: D · O(1)
Each element is pushed and popped at most twice in total, so although one refill can take O(n), the average over a sequence is O(1).
Answer: D · Keep a separate element count, or always leave one slot unused
With a count, empty means count = 0 and full means count = capacity; with one empty slot, full is defined as (rear + 1) mod n == front.
Answer: H = 3
Euler, Hamilton and trees: a connected graph has an Euler circuit (every edge once, back to the start) when every vertex has even degree, and an Euler path that is not a circuit when exactly two vertices have odd degree; the path then runs from one odd vertex to the other. A Hamilton circuit visits every vertex once; Kn has (n − 1)!/2 of them. A tree on n vertices has n − 1 edges, and a connected graph with m edges keeps a spanning tree after removing m − n + 1 edges.
Answer: edge GB
Shortest paths and spanning trees: Dijkstra’s algorithm settles one vertex per round: the unsettled vertex with the smallest tentative distance. Its distance is then final, and every neighbour v gets d(v) = min(d(v), d(u) + w(u, v)). Kruskal’s algorithm builds a minimum spanning tree by taking the edges from light to heavy and skipping any edge that would close a cycle; Prim’s algorithm grows one tree from a start vertex by always adding the lightest edge that leaves it. A spanning tree of n vertices has n − 1 edges.
Answer: C · A named temporary result that can be used within one statement
A CTE gives a subquery a name, which makes complex queries easier to read and can be referenced several times in the same statement.
Answer: A · 0
COUNT(col) counts non-NULL values, so it returns 0; COUNT(*) would return 10.
Answer: A · Hop count
RIP is a distance-vector protocol that counts hops, with 16 meaning unreachable. This limits it to small networks.
Answer: C · Name resolution (DNS)
A successful ping to an external IP proves cabling, addressing and routing work. Failing names point to a DNS server or resolver setting problem.
Answer: N = 64
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).
Each /22 subnet has 210 − 2 = 1022 usable hosts.
Answer: x = 96
VLSM: each LAN gets the smallest subnet with 2ʰ − 2 ≥ its host count, i.e. prefix 32 − h. Allocating the largest subnets first keeps every block aligned on a multiple of its own size, so the network addresses follow by adding up the block sizes.
LAN C: 192.168.245.96/28.
ExamProblems · examproblems.com/courses/computer-science-fundamentals