A combinational circuit computes its outputs from the inputs it sees right now, and nothing else. Give it the same inputs tomorrow and you get the same outputs. It has no idea what happened a moment ago.
That property comes from how it's built: logic gates wired from inputs toward outputs, with no feedback loops. Because nothing is remembered, a single truth table lists its complete behavior, one row per input combination.
The opposite is a sequential circuit, which contains memory (latches or flip-flops). Its output also depends on what it has stored, so the same inputs can give different outputs at different times.
Common combinational building blocks:
- Multiplexers and demultiplexers, which route signals
- Decoders and encoders, which convert between codes
- Comparators and adders, which do arithmetic on numbers
One subtlety: "depends only on present inputs" describes the settled result. Real gates need a little time, the propagation delay, so after an input changes the output is briefly in transition before it settles.