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.
Set the bits so they store −102 in 8-bit two's complement. Read as an unsigned number, what is the pattern's value U?
A system must give every one of 2130 items its own binary code of the same length. What is the smallest number of bits b needed?
You want to prove (q ∧ p) → r by contrapositive. Which implication do you prove instead? Click it.
Which statement is equivalent to ¬∀x ∀y (R(x, y) → R(y, x)), with the negation moved all the way inside? Click it.
Simplify F = A′B′C′ + A′B + B′C′ to its minimal sum-of-products form. How many literals L does the simplified expression contain?
A positive-edge-triggered JK flip-flop starts with Q = 0 and receives the inputs shown at 7 rising clock edges. How many times N does Q change state?
Find the inverse of 53 modulo 64: the number x with 0 < x < 64 and 53·x ≡ 1 (mod 64).
Encrypt the message m = 406 with the RSA public key (n, e) = (1147, 11). Find the ciphertext c.
What is the time complexity of: for i = 1 to n: for j = 1 to i: do O(1) work?
Shortest simple paths can be found in polynomial time. What is known about finding the longest simple path between two vertices in a general graph?
AVL trees and red-black trees guarantee:
A Bloom filter can answer "is this element in the set?" with:
Does the connected graph have an Euler circuit, an Euler path that is not a circuit, or neither? Click your answer.
How many closed walks of length 2 start and end at C? A walk may repeat vertices and edges. Call the number N.
Which ACID property means concurrent transactions do not see each other's unfinished changes?
When is a schedule of concurrent transactions called serializable?
How many usable host addresses does a /24 IPv4 network have?
Why does TCP choose an unpredictable initial sequence number for each connection?
A department needs 181 host addresses in a single subnet. What is the longest prefix length p (smallest subnet) that is big enough?
A router has routes to these networks: 10.176.242.0/24, 10.176.243.0/24, 10.176.244.0/24, 10.176.245.0/24, 10.176.246.0/24. What is the longest prefix length p of a single summary route that covers all of them?
Answer: U = 154
Setting bits: each bit is worth a power of two (128, 64, …, 1). One hex digit is exactly four bits, and in 8-bit two's complement the leftmost bit is worth −128. Bitwise operations work on each bit position separately.
Answer: b = 12 bit
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: ¬r → ¬(q ∧ p)
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).
The contrapositive is equivalent to the original statement, so proving it proves the statement.
Answer: ∃x ∃y (R(x, y) ∧ ¬R(y, x))
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.
The other options either keep a quantifier unchanged, change the order of the quantifiers, or negate the inner formula wrongly.
Answer: L = 4
Boolean algebra: the rules that simplify expressions are X + X′ = 1 and X·X′ = 0, X + X = X, absorption X + X·Y = X, the combining rule X·Y + X·Y′ = X, X + X′Y = X + Y and the consensus theorem XY + X′Z + YZ = XY + X′Z. De Morgan's laws turn (X·Y)′ into X′ + Y′ and (X + Y)′ into X′·Y′. A Karnaugh map applies these rules graphically: every group of two neighbouring cells is one use of XY + XY′ = X.
Answer: N = 5
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.
A JK flip-flop: 00 holds, 01 resets (Q = 0), 10 sets (Q = 1), 11 toggles.
Answer: 53−1 mod 64 = 29
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·53 (mod 64).
Answer: c = 850
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: B · O(n²)
The inner body runs n(n + 1) / 2 times in total, which is still quadratic.
Answer: B · It is NP-hard
A longest simple path of length V − 1 is a Hamiltonian path, an NP-complete problem; on directed acyclic graphs, however, it is solvable in linear time.
Answer: D · O(log n) height through rebalancing
Self-balancing trees keep height logarithmic, so search, insert and delete are O(log n) in the worst case.
Answer: D · Possible false positives but no false negatives
If any bit for an item is 0, it is definitely absent; if all are 1 it is probably present. Bloom filters trade accuracy for very little memory.
Answer: neither
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: N = 3
Degrees: the degree of a vertex is the number of edges that meet it. Every edge has two ends, so the degrees add up to twice the number of edges: Σ deg(v) = 2|E| (the handshake lemma). The number of vertices with odd degree is therefore even. Kn has n(n − 1)/2 edges, a k-regular graph on n vertices has nk/2, and a tree on n vertices has n − 1 edges.
Answer: D · Isolation
Isolation keeps concurrent transactions apart; isolation levels decide how strictly this is enforced.
Answer: A · When its effect is equivalent to some serial execution of the same transactions
Serializability is the main correctness criterion for concurrency: the interleaved result must equal the result of some one-at-a-time order.
Answer: D · 254
A /24 has 8 host bits, so 2⁸ = 256 addresses. The network and broadcast addresses are reserved, leaving 254 for hosts.
Answer: D · To avoid confusion with old segments and make spoofed segments harder to inject
Random initial sequence numbers stop delayed segments from old connections being accepted and make it hard for off-path attackers to forge valid segments.
Answer: p = 24
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).
Answer: p = 21
Route summarisation: a summary route a.b.c.0/p covers all networks whose first p bits match. Write the differing octet of the first and last network in binary; the number of common leading bits, plus the bits of the octets before it, is the longest summary prefix.
Summary route: 10.176.240.0/21 (it also covers 3 network(s) that are not in the list).
ExamProblems · examproblems.com/courses/computer-science-fundamentals