17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Le type long<br />

Syntaxe du langage<br />

CHAPITRE 4<br />

Les nombres entiers dépassant la plage de -2 147 483 648 à 2 147 483 647, définis<br />

précédemment comme des entiers longs, sont quant à eux codés par le biais d’une<br />

variante du complément à deux. Cette variante définit une valeur suivant une série de<br />

bits de taille indéfinie, la mémoire disponible étant la seule limite. L’objectif de cette<br />

représentation est de minimiser les problématiques de passages de type long à type<br />

int lors d’opérations arithmétiques.<br />

<strong>PYTHON</strong> 3 Unification des types long et int<br />

Les types long et int ne sont plus qu’un seul et même type sous Python 3, et ce nouveau type int<br />

fonctionne sans limites de valeur.<br />

Le type bool<br />

Il existe enfin un sous-ensemble composé des valeurs 0 et 1, qui permet de définir le<br />

type booléen. Ce type est représenté par deux objets uniques :<br />

True ;<br />

False.<br />

Ces objets sont équivalents aux objets 0 et 1 de type int.<br />

Les nombres à virgule flottante<br />

Les nombres à virgule flottante utilisés pour représenter des réels sont tous à double<br />

précision (norme IEEE 754) en Python, soit des nombres codés sur 64 bits. La simple<br />

précision n’est pas implémentée, car le gain en termes de taille mémoire et de temps<br />

CPU est ridicule par rapport aux autres consommations d’un programme Python.<br />

CULTURE La norme IEEE 754<br />

La norme IEEE 754, reprise par la norme internationale IEC 60559, définit le format des nombres à virgule<br />

flottante et est adoptée par la quasi-totalité des architectures d’ordinateur actuelles. Les processeurs<br />

intègrent directement des implémentations matérielles pour le calcul sur les flottants IEEE, ce qui<br />

rend leur usage rapide. Les flottants IEEE sont codés en « simple précision » sur 32 bits ou en « double<br />

précision » sur 64 bits. Le seul intérêt de la simple précision est un gain relatif de mémoire et de temps<br />

CPU, ce qui est devenu accessoire avec la puissance des machines actuelles.<br />

Le principe de la virgule flottante est de définir le nombre réel par un signe, une mantisse entière ou significande<br />

qui représente le nombre complet, et l’exposant qui détermine la place de la virgule dans le nombre.<br />

Les flottants demeurent une approximation rationnelle des nombres réels, et posent quelques problèmes.<br />

Le principal est que des arrondis peuvent se cumuler dans les calculs et introduire des erreurs dramatiques<br />

dans certains domaines comme le calcul scientifique ou la comptabilité. L’utilisation des flottants y<br />

est donc proscrite, et remplacée par des entiers.<br />

65

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!