Boolean Circuits · NAND Game: Arithmetic and Switching

Lesson 8

Nikolai Chukhin · Alexander S. Kulikov

Problem. Construct a component that outputs \(1\) if and only if an 8-bit input number is less than \(0\). The inputs are \(x_{7},x_{6},\dotsc,x_{0}\), where \(x_{7}\) is the most significant bit. The output is a single bit \(z\).

Interpret the input as a signed 8-bit integer in two's complement notation. Then the number is negative exactly when its most significant bit is equal to \(1\).

No gates are needed in this task: it is enough to route the correct input label to the output.

Examples: \[00000000 \mapsto 0,\] \[01111111 \mapsto 0,\] \[10000000 \mapsto 1,\] \[11111111 \mapsto 1.\]

The authors' solution uses \(0\) gates.

10 points