Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Video transcription

DIGITAL INFORMATION
When we think about the digital economy, when we think about "digital" in general, when we
think about information technology, we are interested in everything that is made possible by
the use of digital information.

To apprehand a digital culture, let's start with this fundamental element that is digital
information... and at least once, let's open the hood and look at how it works inside the
machine - very concretely.

A computer works with binary information.

It works with zeros. With ones. Is there anything else? No, nothing else.

Why limit ourselves to zeros and ones?


First of all, because it's easy to represent with electricity.

● Either there is no electricity in the wire - and we consider that we have a Zero.
● Or there is electricity in the wire - and we consider that we have a One.

It's easy: a wire, electricity, and a switch are all you need. You don't need to manage intensity
levels precisely to represent more values... Yet with just ones and zeros, we can do a lot.

We can represent everything we need for logical reasoning. We can easily represent True and
False. Without going into detail, we can deal with

● The OR operator, to signify that one or the other of two propositions is true;
● The AND operator - when two propositions must be true, one and the other;
● And finally the NO operator to reverse the value of a proposition - making it false if it is
true and vice versa.

Now it turns out that with OR, AND, NOT, we can represent all possible logical relationships.

1
Beyond logic, binary allows us to count
Mathematically, we say that the numbers will be represented in base 2. Each b here
corresponds to a 0 or a 1. Depending on its position, it contributes differently to the value of
the number represented. This value is calculated by adding the products of each digit to a
power of 2. The digit - 1 or 0 - in position 0 is multiplied by 2 to the power of 0, the digit in
position n is multiplied by 2 to the power of n. In this example, you have 0 multiplied by 2 to
the power of 0, plus 1 multiplied by 2 to the power of 1, plus 1 multiplied by 2 to the power of
2, plus 0 multiplied by 2 to the power of 3, plus 0 multiplied by 2 to the power of 4, plus 1
multiplied by 2 to the power of 5, which gives us…​ ​38.

Thus, with zeros and ones, we can represent all numbers.

A simple addition
Now, let's see how to make a simple addition with electricity. We want to add 1 with 1. I made
it clear that it was a simple addition! So we get 2. 2 in binary! So 1 0.

A simple adder 

Here is the electronic circuit that makes this addition possible.

This part is what is called a "logic gate" which


corresponds to NO. If there is electricity at the input,
there is no electricity at the output - and vice versa.

This rounded part is an AND gate: there has to be


electricity in both the incoming wires to have electricity
in the outgoing wire.

2
And here is finally an OR gate: there is always
electricity in the outgoing wire, unless both the
incoming wires have no electricity.

Since we want to add 1 and 1, we put electricity into the two incoming wires of the circuit. All
you have to do is follow the flow of the current.

● Let's start with the B-wire. Since it brings electricity to the entrance of the gate NO,
there's no electricity coming out of that gate.
● The A-wire, quietly propagates its electricity. Since there is electricity in one wire, but no
electricity in the other, there's no electricity out.

Let's go back to tracking the B-wire. It brings electricity to the AND gate.

The A-wire, on its side, brings electricity to the entrance of the NO gate. So there's no electricity
coming out of that gate.

We find ourselves again with electricity in one of the


entrances of the AND gate, but no electricity in the
other, so there's no electricity coming out of that
gate… So there is no electricity at all at the entrance
of this OR gate. And therefore no electricity at the
exit. We just got the 0 of the 1 0 result.

Back to the tracking of wires A and B...

B, brings electricity to the entrance of this AND gate. A does the same. Since there's electricity
in both entrances to this AND gate, there's electricity coming out. Here is the carry-over, which
can later give the 1 of the result 1 0.

What about a previous carry-over? 

If a previous carry-over is to be taken into account, it makes the circuit a bit more complex.

3
An adder at the transistor level 

In addition, each logic gate is itself an electronic circuit.

Here is the circuit corresponding to an AND gate. The transistor


being a basic electronic component.

The circuit of a NO gate. And the circuit of an OR gate.

By replacing all the logic gates with their respective electronic circuits, we obtain the
transistor-based circuit, allowing a very simple addition to be made.

You can see that there is nothing magical about


it, it's just wires, electricity and transistors that
act as switches, so to speak.

This circuit enables - only - to make a simple


addition.

Then we understand why computer processor


manufacturers are trying to integrate more and
more transistors - today there are hundreds of
millions of transistors, over a billion.

4
32/64 bit microprocessor? 

We also understand what it means for a processor to be a 32 or 64-bit processor. It’s simply the
number of incoming wires. In our example, there were two.

Abstraction stack 

Thus, at the machine level, at the computer level, it’s only about electricity and a lot of
switches. To use these circuits, programs are written in ​binary​. That is, a series of 0's and 1's
which indicate whether or not there’s electricity in the incoming wires.

It works... but it's challenging for a human to use.

So for each type of processor, there is a​n assembler language​. It’s more compact than binary
language. It consists of blocks, of a few letters, and 1's and 0's. An assembler translates this
language into binary. However, this is still very difficult to use.

The so-called ​"high-level languages" ​were therefore created. These are, for example, Java,
Python, C++, Perl, Lisp, Ada, etc. These languages are generally close to English. Much easier to
use by human developers. Compilers and interpreters are used to translate them automatically
into assembler language.

These languages are said to be "high level" in the abstraction stack because they are distant
from the details of electronic circuits. They disregard the electronic specifics. A machine
language depends on the machine under consideration. A program in Java or Python is written
once, and for all computers. Successive translations will take into account the specificities of
the targeted machine.

The program written in a high-level language defines, in particular, an interface with the user
(click, voice command, etc.). This mode of interaction can be considered as a language that is
even more abstracted from the details of the machine.

This abstraction stack is at the heart of computing.

5
Conclusion
We're not interested in the details of the electronics. Nevertheless, we have to keep in mind
that in computing, in the end, everything comes down to electricity in wires. We can talk about
virtual reality immersion, artificial intelligence, Big Data, etc... at the end of the day, it's just
electricity in wires and a lot of switches.

It's dizzying. And at the same time very concrete.

You might also like