Computer Science Foundations and Computational Thinking
What Domain 1 tests
Computer Science Foundations and Computational Thinking asks you to move between human problem statements and machine representations. Items target number bases, Boolean logic, data encoding, hardware and software basics, and the computational-thinking practices of decomposition, pattern recognition, abstraction, and algorithm design.
Core rules
- In binary, each position is a power of two. For 8 bits the weights are 128, 64, 32, 16, 8, 4, 2, 1. Hexadecimal is base 16, and every hex digit maps to exactly four bits.
- Unsigned 8-bit values run from 0 to 255. Two’s complement runs from −128 to 127; the leftmost bit has weight −128.
- AND outputs 1 only when both inputs are 1. OR outputs 1 when at least one input is 1. XOR outputs 1 only when the inputs differ. NAND and NOR are universal gates.
- ASCII is a 7-bit code for basic English characters; Unicode assigns code points to characters across writing systems, and UTF-8 is a variable-length encoding of those points.
- Decomposition breaks a problem into parts; abstraction suppresses detail irrelevant to the current question.
Worked example
Interpret the 8-bit pattern 11010110 as a two’s complement integer. The leading 1 signals a negative value. Invert the bits to get 00101001, then add 1: 00101010. That magnitude is 32 + 8 + 2 = 42, so the value is −42. The same pattern is 214 unsigned and D6 in hexadecimal.
Traps
Forgetting the “add 1” after inverting is the classic two’s-complement error. Another is reading the sign bit as ordinary magnitude and reporting −214. In logic, 1 XOR 1 is 0, not 1. Also distinguish decimal prefixes: 1 KB is 1000 bytes, while 1 KiB is 1024 bytes.