ajout séquence fonctions booléennes

This commit is contained in:
2023-07-03 17:54:40 +02:00
parent 02967d029f
commit 1ae2f22c46
9 changed files with 347 additions and 264 deletions

View File

@@ -17,14 +17,14 @@ Maintenant que nous allons tenter de coder les réels, les limites de notre mach
### À Faire
1. effectuez le calcul $`0.2 + 0.1`$ en Python :
Effectuez le calcul $`0.2 + 0.1`$ en Python :
```python
>>> 0.2 + 0.1
???
```
2. testez l'égalité suivante :
Testez l'égalité suivante :
```python
>>> 0.2 + 0.1 == 0.3
@@ -45,7 +45,7 @@ Ainsi, un calcul avec des nombres à virgule ne peut-être qu'__approximatif__.
Il existe deux façons de coder les nombres réels, en virgule fixe ou virgule flottante.
### 3.1. Virgule fixe
### Virgule fixe
Le codage en __virgule fixe__ consiste à garder __un nombre fixe de chiffes après la virgule__.
@@ -63,8 +63,8 @@ Linconvénient de cette méthode est que, pour un nombre avec peu de chiffres
Représenter les valeurs suivants sur 8 bits, en virgule fixe :
1. 7,75
2. 0,1
- 7,75
- 0,1
### Virgule flottante
@@ -103,9 +103,7 @@ Par exemple :
_N.B : Dans le cas de la notation scientifique binaire, le nombre avant la virgule doit être compris entre $`1_2`$ inclus et $`10_2`$ exclus (c'est-à-dire 2 exclus), c'est-à-dire que sa partie entière est nécessairement 1._
#### 3.2.3 Passage de l'écriture décimale à l'écriture binaire pour un nombre flottant
#### Passage de l'écriture décimale à l'écriture binaire pour un nombre flottant
Si vous avez bien suivi, vous savez qu'un nombre est composé de deux parties :
@@ -130,7 +128,7 @@ Exemple :
0,6875 s'écrit donc 0,1011<sub>2</sub>
#### 3.2.4. Principe du codage en virgule flottante
#### Principe du codage en virgule flottante
Un nombre flottant est formé de trois éléments : la mantisse, l'exposant et le signe.
@@ -165,7 +163,7 @@ Le code `1 101 1011` sur un octet utilisant 1 bit de signe, 3 bits pour l'exposa
----------------
## 4. La norme IEEE 754
## La norme IEEE 754
> L'__IEEE 754__ est une norme pour la représentation des nombres à virgule flottante en binaire. Elle est la norme la plus employée actuellement pour le calcul des nombres à virgule flottante dans le domaine informatique.
@@ -179,7 +177,7 @@ Cette norme définit notamment 2 formats pour représenter des nombres à virgul
![](./assets/ieee_754_double.svg)
### 4.1. Valeurs remarquables
### Valeurs remarquables
Chaque norme défini aussi des valeurs spéciales, par exemple en double précision:
@@ -188,7 +186,7 @@ Chaque norme défini aussi des valeurs spéciales, par exemple en double précis
- l'infini positif: +∞ = `0 11111111111 0000000000000000000000000000000000000000000000000000`,
- l'infini négatif: +∞ = `1 11111111111 0000000000000000000000000000000000000000000000000000`
### 4.2. Impossibilité de coder tous les nombres réels
### Impossibilité de coder tous les nombres réels
Voici lécriture binaire en format double précision de deux flottants.
@@ -230,15 +228,15 @@ Le flottant 2.000000238418579 est donc représenté comme le suivant de 2.0.
La précision possible avec une mantisse sur 23 bits se situe au niveau dernier bit qui vaut
$`2^{-23}`$ . On ne peut pas trouver un flottant compris entre les deux.
### 4.3. Conclusion
### Conclusion
Les nombres flottants sont une représentation approximative des nombres réels dans un ordinateur. En particulier, il nest pas possible de représenter de manière exacte en machine tous les nombres réels. La manipulation de nombres réels par un langage informatique est donc à prendre avec précaution car elle peut engendrer des résultats surprenants, en particulier il ne faut jamais tester légalité entre deux flottants.
----------
## 5. Exercices
## Exercices
### 5.1. Exercice
### Exercice
On considère des nombres flottants encodés sur un octet avec dans l'ordre:
@@ -257,7 +255,7 @@ On considère des nombres flottants encodés sur un octet avec dans l'ordre:
- Quel est le plus petit nombre à virgule, donc négatif ?
- Quel est le plus petit nombre à virgule strictement positif que l'on peut représenter ?
### 5.2. Exercice
### Exercice
1. Quelles sont les valeurs attendues des instructions suivantes ?
@@ -300,7 +298,7 @@ On considère des nombres flottants encodés sur un octet avec dans l'ordre:
```
2. Copier et exécuter les instructions précédentes et comparer avec les résultats attendus.
### 5.3. Exercice
### Exercice
On considère le programme suivant: