Les langages de programmation utilisaient un jeu de caractères appelé ASCII qui représentait tous les chiffres et les lettres de l'alphabet anglais.
Il suffisait de 7 bits d'un octet composé de 8 bits pour les stocker tous. Ainsi, des utilisateurs parlant d'autres langues ont pensé qu'ils pouvaient utiliser l'espace de ce bit restant pour stocker des caractères propres à leurs langues, comme par exemple les accents, la cédille, le ñ, et tant qu'à faire, ajouter aussi des caractères pour créer des graphiques dans un terminal comme des lignes horizontales, verticales, des angles, etc. Le fait est que chacun l'a fait à sa manière... d'où une multitude de variations...