USB Fast Chargers

I’ve been a bit confused lately at what constitutes fast charging versus normal charging, and why newer Android devices complain repeatedly if you use the wrong cable, or the wrong charger, or the wrong cable AND charger. How does it know?

Then I found an article on LifeHacker that partially explains it, but this comment thread clarified in an excellent manner:

Programming School

Integer Math – Converting to Binary

Yes, I realize this is a beginning digital logic concept, but I need somewhere to write this so I don’t forget again.