Čítač počítá impulzy vnějšího signálu (měří jeho kmitočet). Časovač čítá pevný kmitočet, který je obvykle odvozen od hodinového signálu mikropočítače. 8051 obsahuje dva čítače/časovače, které mohou mít délku až 16 bitů. Obsah čítačů časovačů je dostupný pomocí registrů THx nebo Tlx. X je konkrétní číslo časovače/čítače. THx je horní bajt a TLx je dolní bajt. Každý čítač nebo časovač s dá nastavit do 4 režimů. Pro řízení časovačů/čítačů se používají registry TMOD a TCON.
Tento registr umožňuje volit režim obou časovačů/čítačů a není bitově adresovatelný.
| bit 7 | bit 6 | bit 5 | bit 4 | bit 3 | bit 2 | bit 1 | bit 0 |
| G | C/T | M1 | M0 | G | C/T | M1 | M0 |
| Čítač/časovač 1 | čítač/časovač 0 | ||||||
G - volí způsob hradlování čítače (tedy kdy jsou impulzy čítačem uvažovány)
C/T - (Counter/Timer) volí, zda čítač/časovač pracuje jako čítač nebo časovač.
M0, M1 - volí jeden ze čtyř režimů čítače/časovače.
Bity registru TCON slouží pro programové spouštění časovačů nebo pro indikaci přetečí a jsou bitově adresovatelné.
| bit 7 | bit 6 | bit 5 | bit 4 | bit 3 | bit 2 | bit 1 | bit 0 |
| TF1 | TR1 | TF0 | TR0 | IE1 | IT1 | IE0 | IT0 |
TF1 – indikace přetečení čítače/časovače 1, při přetečení je automaticky nastaven, po vstupu do obsluhy přerušení je automaticky vynulován.
TF0 – to samé jako ^ akorát pro čítač/časovač 0
TR1 – spuštění čítače/časovače 1
TR0 - spuštění čítače/časovače 0