KlarIA
💻 NSI (spécialité)1ereFiche de révision

Nombres flottants et valeurs booléennes

📝

Fiche de révision

📝 Fiche de révision — Nombres flottants et valeurs booléennes


🔢 Réels en binaire

  • Après la virgule : poids 21=0,52^{-1} = 0{,}5, 22=0,252^{-2} = 0{,}25, 23=0,1252^{-3} = 0{,}125, 24=0,06252^{-4} = 0{,}0625.
  • 110,1012=4+2+0,5+0,125=6,625\overline{110{,}101}^{\,2} = 4 + 2 + 0{,}5 + 0{,}125 = 6{,}625.
  • Conversion : multiplier par 22, noter la partie entière, recommencer avec le reste : 0,250,51,00{,}25 \to 0{,}5 \to 1{,}0 : 0,012\overline{0{,}01}^{\,2} (fini).
  • Infinis : 0,1=0,00011001120{,}1 = \overline{0{,}0\,0011\,0011\ldots}^{\,2}, 0,20{,}2, 0,30{,}3, 1/3=0,010121/3 = \overline{0{,}0101\ldots}^{\,2} (comme 1/3=0,3331/3 = 0{,}333\ldots en base 1010).

💾 Le flottant

  • x=±1,m×2ex = \pm\,1{,}m \times 2^e : signe (11 bit), exposant (1111 bits), mantisse (5252 bits) sur 6464 bits (norme IEEE 754, détails non exigibles).
  • Mantisse tronquée → approximation, environ 1616 chiffres significatifs : 0.1 est stocké comme 0,10000000000000000550{,}1000000000000000055\ldots
  • 0.1 + 0.2 donne 0.30000000000000004 ; 0.1 + 0.2 == 0.3 vaut False.
  • Règle : jamais a == b sur des flottants ; abs(a - b) < 1e-9 ou math.isclose(a, b) ; argent → entiers (centimes).
  • Exacts : entiers, 0,50{,}5, 0,250{,}25, 0,750{,}75, 5,3755{,}375

✅ Booléens

aabbandorxor
00000
01011
10011
11110
  • not a inverse ; priorités not > and > or ; parenthèses au moindre doute.
  • xor : vrai si aba \neq b (a != b).
  • Table d'une expression : 2n2^n lignes (ordre binaire), une colonne par sous-expression ; même table = expressions équivalentes.
  • De Morgan : not (a and b) = not a or not b ; not (a or b) = not a and not b.

⏩ Évaluation séquentielle

  • a and b : si a faux, b n'est pas évalué ; a or b : si a vrai, b n'est pas évalué.
  • Protéger : i < len(t) and t[i] == 0 ; y != 0 and x / y > 2 (l'ordre compte).

➕ Addition de deux bits

  • somme = a xor b, retenue = a and b (demi-additionneur) ; 1+1=1021 + 1 = \overline{10}^{\,2}.

⚠️ Pièges à éviter

PiègeCorrection
Tester x == 0.3tolérance abs(x - 0.3) < 1e-9
Croire que 0.1 est exactécriture binaire infinie, arrondie
« ou » exclusifor est inclusif ; l'exclusif est xor
t[i] == 0 and i < len(t)condition de protection en premier
Oublier des lignes2n2^n lignes pour nn variables

📌 À retenir

  1. Multiplications par 2 ; fini ou infini.
  2. Flottant approché, pas d'égalité.
  3. Tables and/or/xor/not, De Morgan.
  4. Évaluation en court-circuit.
  5. xor = somme, and = retenue.

Révise ce chapitre avec KlarIA

Tuteur qui t'explique pas à pas, quiz pour t'entraîner, flashcards pour mémoriser. Gratuit.

Créer mon compte gratuitement