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 −3 in 8-bit two's complement. Read as an unsigned number, what is the pattern's value U?
Set the bits to the 8-bit result of 1101 1100 XOR 0010 1111. What is the result's value R in decimal?
Is r ∨ ¬r a tautology, a contradiction or a contingency? Click your answer.
The argument with premises p ∨ r; p 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₀ = C′, I₁ = C, I₂ = C′, I₃ = C. For how many of the 8 combinations of A, B and C is the output F = 1? Find N.
A synchronous decade (mod-10) counter counts 0, 1, …, 9 and then returns to 0. It starts at 9. Which count Q (in decimal) does it show after 19 clock pulses?
Find the inverse of 9 modulo 17: the number x with 0 < x < 17 and 9·x ≡ 1 (mod 17).
Encrypt the message m = 111 with the RSA public key (n, e) = (203, 19). Find the ciphertext c.
A greedy algorithm:
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:
Which statement about heapsort is correct?
Does the connected graph have an Euler circuit, an Euler path that is not a circuit, or neither? Click your answer.
How many walks of length 2 go from D to E? A walk may repeat vertices and edges. Call the number N.
Second normal form (2NF) removes:
Table enrolment(student_id, course_id, student_name, grade) has the key (student_id, course_id). Which normal form does it violate?
A signal travels 2000 km through fibre at about 2 × 10⁸ m/s. What is the propagation delay?
DNS queries normally use UDP. When does DNS typically use TCP instead?
The network 172.30.0.0/16 is divided into equal subnets with prefix /21. How many subnets N are there?
A host has the address 172.20.243.115/23. What is the third octet x of its subnet's broadcast address?
Answer: U = 253
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: R = 243
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.
XOR gives 1 where the two bits differ.
Answer: tautology
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).
Answer: p = 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 = 8
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.
Every 10 pulses bring the counter back to the same state.
Answer: 9−1 mod 17 = 2
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·9 (mod 17).
Answer: c = 181
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 · Makes the locally best choice at each step
Greedy algorithms are fast and optimal for some problems (e.g. Dijkstra, Huffman coding) but not in general (e.g. coin change with some coin systems).
Answer: A · 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: C · 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 · It sorts in place in O(n log n) worst-case time but is not stable
Heapsort builds a max-heap and extracts the maximum n times within the same array; swaps over long distances can reorder equal keys.
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 = 1
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 · Partial dependencies of non-key columns on part of a composite key
2NF requires 1NF and that every non-key attribute depends on the whole key, not just part of it.
Answer: B · Second normal form, because student_name depends on student_id only
student_name depends on only part of the key, which is a partial dependency; moving it to a students table fixes the 2NF violation.
Answer: D · 10 ms
2 × 10⁶ m / 2 × 10⁸ m/s = 0.01 s = 10 ms. Propagation delay depends on distance and medium, not packet size.
Answer: B · For responses too large for UDP and for zone transfers
If a UDP response is truncated, the resolver retries over TCP. Zone transfers between name servers also use TCP because they carry lots of data.
Answer: N = 32
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 /21 subnet has 211 − 2 = 2046 usable hosts.
Answer: x = 243
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).
ExamProblems · examproblems.com/courses/computer-science-fundamentals