B1 · Episode 1 · 5:08
Introduction to the Binary System
This episode introduces the binary number system, explaining how computers store all data—text, images, audio—as sequences of 0s and 1s. It demonstrates encoding text (e.g., 'salut', 'chat') into binary and explores the challenges and rules of unambiguous encoding and decoding.
Source:stph / aperi.tube · License:CC BY-SA 4.0
Transcript
Bonjour à tous, je m'appelle David Savourey,
Hello everyone, my name is David Savourey.
je suis employé par le CNRS et je travaille au laboratoire d'informatique de l'UTC.
I work for the French National Centre for Scientific Research (CNRS), at the University of Technology of Compiègne (UTC) Computer Science Laboratory.
Et aujourd'hui, je voudrais vous proposer une initiation au système binaire.
Today, I’d like to introduce you to the binary system.
Alors chez vous, tout le monde a maintenant un téléphone, une tablette,
Nowadays, everyone at home has a smartphone, a tablet,
un ordinateur dans lequel on peut trouver des textes,
and a computer—inside which we find texts,
des photos, de la musique, des vidéos.
photos, music, and videos.
Tout ça, dans la mémoire de l'ordinateur, c'est écrit en binaire.
All of this, stored in a computer’s memory, is written in binary.
En binaire, ça veut dire une chose très simple,
‘Binary’ means something very simple:
ça veut dire uniquement avec des zéros et des un.
it means using only zeros and ones.
Alors, pour des objets complexes comme des vidéos, ça peut paraître surprenant,
For complex objects like videos, this may seem surprising,
mais on est capable de convertir une vidéo uniquement en zéro et en un.
yet we can indeed convert a video entirely into sequences of zeros and ones.
Alors nous aujourd'hui on ne va pas voir les vidéos parce que c'est quand même très
Today we won’t cover videos, because that’s still quite complicated;
compliqué, mais on va voir comment le faire avec du texte.
instead, we’ll start with text and learn how to handle it.
Notre objectif sera donc de savoir transformer un texte en binaire,
So our goal will be to learn how to convert text into binary,
c'est ce qu'on appelle l'encodage.
a process called encoding.
Et savoir ensuite retrouver le mot à partir du code,
Then, we’ll learn how to reconstruct the original word from its binary code,
c'est ce qu'on appelle le décodage.
a process called decoding.
Vous voyez ici que le coati a écrit sur son téléphone" salut" et qu'il veut envoyer
Here you see that the coati has typed “hello” on his phone,
ce message à la taupe.
and wants to send this message to the mole.
Eh bien, il va falloir qu'il y ait un encodage du mot" salut" en un certain code
Well, the word “hello” must first be encoded into a certain binary code,
binaire et qu'ensuite le téléphone de la taupe, lui,
and then the mole’s phone,
décode ce code binaire pour refabriquer le mot" salut".
in turn, decodes that binary code to reconstruct the word “hello”.
Alors on va s'y mettre et on va commencer par un premier exercice.
Let’s get started—and begin with our first exercise.
On va faire quelque chose de simple, c'est qu'on va compter à partir de zéro,
We’ll do something simple: count starting from zero,
mais avec une contrainte,
but with one constraint:
c'est qu'on ne doit garder que les nombres qui s'écrivent uniquement avec des zéros
and ones.
et avec des uns.
That is, numbers containing only zeros and ones.
Alors on commence: 0, 1, le 2 est interdit, le 3 aussi, etc.
So let's begin: 0, 1; 2 is forbidden, 3 is also forbidden, etc.
etc. jusqu'à 9.
etc., up to 9.
Donc le suivant autorisé, c'est 10,
So the next allowed number is 10,
puis 11, 12, 13, etc.
then 11, 12, 13, etc.
c'est interdit, les 20, les 30, les 40, etc.
these are forbidden: 20, 30, 40, etc.
c'est interdit, on se retrouve à 100.
these are also forbidden—we end up at 100.
Puis 101, 110, 111, vous commencez à avoir l'habitude,
Then come 101, 110, 111—you're starting to get the hang of it,
ensuite ça va être tout interdit jusqu'à 1000, puis 1001, 1010,
then everything up to 1000 is forbidden; after that: 1001, 1010,
1011, 1100, 1101, etc.
1011, 1100, 1101, etc.
Etc. Je vous laisse le faire à votre rythme de votre côté.
etc. I’ll leave you to practice at your own pace.
Alors voilà, quand on en a écrit suffisamment, on s'arrête.
Alright—once we’ve written enough, we stop.
Et puis maintenant, on va se dire que pour encoder,
Now, let’s consider how to encode:
eh bien on va associer à chaque lettre de l'alphabet.
we’ll assign to each letter of the alphabet,
Un nombre binaire.
a binary number.
Alors voilà, j'ai remis les nombres et à côté j'ai mis les lettres.
Here, I’ve listed the numbers, with their corresponding letters beside them.
Et donc je vais associer à la lettre A le nombre 0, à la lettre B le nombre
So I’ll assign number 0 to letter A, number 1 to letter B, number 10 to letter C, etc.
1, à la lettre C le nombre 10, etc.
etc.
Et donc maintenant, on est prêt pour encoder un mot.
Now we’re ready to encode a word.
Vous voyez, il y a les codes à
You see—the codes are on the left,
gauche, pardon.
sorry.
Et là, on va utiliser un petit mot, ici" chat", et on va fabriquer son code.
Here, we’ll use the short word "chat" (cat) and build its code.
Alors, la lettre C.
Letter C,
Le code est 10, la lettre H,
its code is 10; letter H,
le code est 111, la lettre A, le code est 0, et la lettre T,
its code is 111; letter A, code 0; letter T,
le code est 10011.
its code is 10011.
Et voilà, on a fabriqué le code du mot chat.
And there we go—we've created the code for the word 'cat.'
Mais on a triché parce que notre code contient des 0, des
But we cheated, because our code contains zeros and ones
1 et des espaces.
and spaces.
Et les espaces, c'est interdit.
And spaces are forbidden.
Vous voyez qu'il y a des espaces entre 10 et 111, entre 111 et 0,
You can see there are spaces between 10 and 111, between 111 and 0,
et entre 0 et 10111.
and between 0 and 10111.
Eh bien, en binaire, on a le droit uniquement aux 0 et aux 1.
Well, in binary, only zeros and ones are allowed.
Alors si on n'a pas le droit aux espaces, eh bien c'est simple,
So if spaces aren’t allowed, well, it’s simple:
on va les enlever.
we’ll just remove them.
Et finalement, le code du mot chat sera 1 0 1 1 1 0 1 0 0
And finally, the code for the word 'cat' becomes: 1 0 1 1 1 0 1 0 0
1 1. Voyons maintenant ce qui se passe du point de vue du décodage.
1 1. Now let’s see what happens during decoding.
Je vous rappelle que le décodage doit permettre de retrouver le même mot.
Let me remind you: decoding must recover the exact same word.
La situation suivante où le coati envoie le mot chat,
For example, in this scenario—the coati sends the word 'cat',
ça génère un certain code, et au décodage, la taupe reçoit le mot chien,
which generates a certain code, yet upon decoding, the mole receives the word 'dog',
ne nous convient pas, on ne veut pas de ça.
this is unacceptable—we don’t want that.
Nous ce qu'on veut, c'est que si le coati envoie le mot chat,
What we actually want is: if the coati sends the word 'cat',
au décodage, on retrouve bien le mot chat.
then decoding must correctly recover the word 'cat.'
Alors, je vous ai réécrit ici le code qu'on avait fabriqué à partir du mot chat,
I’ve rewritten here the code we built from the word 'cat',
et vous voyez que, effectivement,
and as you can see,
on peut retrouver le mot chat à partir de ce code, en prenant d'abord 10,
we really can recover 'cat' from this code—first take 10,
puis 111, puis 0, puis 10011.
then 111, then 0, then 10011.
Mais si on découpe différemment le même code, on peut fabriquer d'autres mots.
But if we split the same code differently, we can produce other words.
Par exemple, ici je prends d'abord le 1 pour B, le 0 pour A,
For instance, here I take the first '1' for B, then '0' for A,
le 1 pour B, le 1 pour B, le 1 pour B, etc.
then another '1' for B, another '1' for B, another '1' for B, etc.