FTCE Computer Science study materials
FTCE Computer Science study resources

FTCE Computer Science: Computer Science Content Knowledge

FTCE Computer Science · Work through your exam, one topic at a time.

All guide sections

Computer Science Content Knowledge

Domain 1 - Computer Science Content Knowledge tests the foundational ideas that underlie all computing: how data is encoded, how logic gates and Boolean algebra work, and how algorithm cost is described. Expect questions that ask you to convert values, interpret bit patterns, evaluate expressions, and choose the most accurate complexity statement.

Number systems and representation

Binary is positional base 2; each bit's value doubles from right to left. Group four bits from the right to form hexadecimal digits (1011 1100 = BC). For n-bit two's complement, the representable range is -2^(n-1) through 2^(n-1)-1; the leftmost bit has negative weight. To negate, invert all bits and add 1. Overflow occurs when a result falls outside this range. ASCII defines 128 codes; Unicode assigns code points, and UTF-8 encodes them in one to four bytes. IEEE 754 floating point stores sign, exponent, and fraction, so many decimals cannot be exact.

Logic and algorithmic cost

AND, OR, NOT, NAND, NOR, and XOR can be summarized in truth tables. De Morgan's laws: NOT(A AND B) = NOT A OR NOT B; NOT(A OR B) = NOT A AND NOT B. Big-O describes growth as input size increases; constants and lower-order terms are dropped: 3n^2 + 5n + 2 is O(n^2). O(1) is constant, O(log n) halves the problem, O(n) is linear, O(n log n) fits efficient comparison sorting, and O(n^2) often comes from nested loops.

Worked example

Interpret the 8-bit pattern 1101 0110. Unsigned, it is 128 + 64 + 16 + 4 + 2 = 214, which is D6 in hexadecimal. As two's complement, the leading 1 means negative. Invert: 0010 1001; add 1: 0010 1010 = 42, so the value is -42. The same bits have different meanings depending on interpretation, so the question must state signed, unsigned, or another encoding.

Traps that cost marks

Grouping hex digits from the left instead of the right; forgetting sign extension when widening a negative two's complement value; treating ASCII as identical to Unicode; writing O(2n) instead of O(n); and assuming floating-point equality after arithmetic.