Aller au contenu
Réussir mon BTS SIO

Tape une notion, une commande ou le nom d'une épreuve.

Par exemple

Chapitre 138 minDébutant

Aide-mémoire d'arithmétique

Par Josselyn C., prof de BTS SIO. Mis à jour le .

À la fin de ce chapitre, tu sauras

  • retrouver en un coup d'œil une table, une méthode ou une propriété ;
  • éviter les erreurs qui coûtent le plus de points.

Cet aide-mémoire rassemble sur une page ce qu'il faut savoir par cœur pour l'arithmétique de l'E3 du BTS SIO : les tables des puissances et des chiffres hexadécimaux, les méthodes de conversion, les définitions et propriétés de la division euclidienne, du PGCD et des congruences, les formules du chiffrement affine, les fonctions Python utiles et les erreurs qui coûtent le plus de points. Chaque ligne renvoie au chapitre qui l'explique.

Les tables à connaître

Puissances de 2 (chapitre 1) :

n0123456789101632
2ⁿ12481632641282565121 02465 5364 294 967 296

Puissances négatives de 2 (chapitre 3) : 2⁻¹ = 0,5 ; 2⁻² = 0,25 ; 2⁻³ = 0,125 ; 2⁻⁴ = 0,0625 ; 2⁻⁵ = 0,031 25.

Puissances de 16 : 16⁰ = 1 ; 16¹ = 16 ; 16² = 256 ; 16³ = 4 096 ; 16⁴ = 65 536.

Chiffres hexadécimaux :

Hexadécimal0123456789ABCDEF
Décimal0123456789101112131415
Binaire0000000100100011010001010110011110001001101010111100110111101111

Octets de masque : 0, 128, 192, 224, 240, 248, 252, 254, 255 (0 à 8 bits à 1 en partant de la gauche).

Nombres premiers inférieurs à 100 : 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97.

Inverses modulo 26 (chapitre 9) :

a1357911151719212325
a'1921153197231151725

Multiples de 26 : 26, 52, 78, 104, 130, 156, 182, 208, 234, 260.

Numération : les méthodes

ConversionMéthodeChapitre
Base b → base 10Somme des chiffres × poids (ou Horner : × b puis + chiffre)2
Base 10 → base b (entier)Divisions successives par b, restes lus de bas en haut, jusqu'au quotient 02
Base 10 → base 2 (de tête)Retirer les plus grandes puissances de 2 possibles2
Base 2 ↔ base 16Paquets de 4 bits depuis la virgule (complétés par des 0 aux extrémités)2
Partie fractionnaire, base 10 → base bMultiplications successives par b, parties entières lues de haut en bas3
Arrondi au plus près en base 2Premier bit supprimé à 1 → par excès ; à 0 → par défaut3
× 2ᵏ et ÷ 2ᵏ en base 2Décalage de k rangs ; les k bits sortis à droite forment le reste4

Retenir aussi :

  • n bits codent 2ⁿ valeurs, de 0 à 2ⁿ − 1 ; un octet va de 0 à 255, soit de (00)₁₆ à (FF)₁₆ ;
  • addition : retenue dès que la somme d'une colonne atteint la base (2 ou 16) ;
  • seuls les nombres de la forme entier ÷ 2ᵏ ont une écriture binaire finie : 0,1 et 0,2 n'en ont pas ;
  • un ordinateur stocke les réels en virgule flottante (IEEE 754, double précision : environ 15 à 17 chiffres significatifs) : ne compare jamais deux flottants avec ==.

Arithmétique modulaire : définitions et propriétés

NotionCe qu'il faut savoirChapitre
Division euclidiennea = b × q + r avec 0 ≤ r < b ; q et r uniques5
Diviseurb divise a ⇔ le reste de a par b est nul5
Nombre premierExactement deux diviseurs, 1 et lui-même ; 1 n'est pas premier6
Test de primalitéAucun diviseur premier ≤ √n ⇒ n premier6
Nombre de diviseursn = p₁^a₁ × … × pₖ^aₖ a (a₁ + 1)…(aₖ + 1) diviseurs6
PGCD par décompositionFacteurs communs, avec le plus petit exposant7
Algorithme d'EuclidePGCD(a, b) = PGCD(b, r) ; le PGCD est le dernier reste non nul7
Premiers entre euxPGCD(a, b) = 17
Congruencea ≡ b [n] ⇔ n divise a − b ⇔ même reste modulo n8
CompatibilitéOn peut additionner, multiplier, élever à une puissance ; jamais diviser8
Multiples modulo nCe sont les multiples de d = PGCD(a, n) ; il y en a n ÷ d9
Liste circulaireSauts de a sur n éléments : exhaustif ⇔ PGCD(a, n) = 19
Inverse modulo na × a' ≡ 1 [n] ; existe ⇔ PGCD(a, n) = 19
a × x ≡ b [n]Si a inversible : x ≡ a' × b. Sinon : solutions ⇔ PGCD(a, n) divise b9

Chiffrement

ChiffrementCodageDécodageClés
César, clé ky ≡ x + k [26]x ≡ y − k [26]26 (dont la clé nulle)
Affine, clé (a, b)y ≡ ax + b [26]x ≡ a'(y − b) [26], a' inverse de aa premier avec 26 : 12 × 26 = 312

A = 0, B = 1, …, Z = 25 (vérifie la table du sujet). Pour casser : force brute, ou analyse de fréquences (E est la lettre la plus fréquente en français) et deux lettres connues donnent un système de deux congruences (chapitre 10).

Python en une table

BesoinPythonRésultat
Écrire en binaire, en hexadécimalbin(156), hex(2026)'0b10011100', '0x7ea'
Écrire sur n bitsformat(10, '08b'), format(255, '02X')'00001010', 'FF'
Lire une écriture en base bint('7EA', 16)2026
Quotient, reste2026 // 7, 2026 % 7, divmod(2026, 7)289, 3, (289, 3)
Décalages11 << 2, 45 >> 244, 11
ET, OU, XOR bit à bita & b, a | b, a ^ b
PGCD, PPCMmath.gcd(84, 126), math.lcm(6, 8)42, 24
Puissance modulairepow(3, 2026, 7)4
Inverse modulairepow(7, -1, 26)15
Comparer des flottantsmath.isclose(0.1 + 0.2, 0.3)True

Les algorithmes à savoir écrire (conversion, Euclide, test de primalité, crible, décomposition, inverse) sont au chapitre 11.

Les erreurs qui coûtent des points

Chapitre terminé !

Tu as lu ce chapitre jusqu'au bout. Passe au suivant tant que c'est frais.

chapitres
–
de série
–
du cours
–
Cours suivant : EnsemblesRevoir le sommaire du cours