2010-07-01 5 views

Répondre

23

Les nombres non signés n'ont pas le signe moins. Le nombre non signé peut être seulement positif ou nul (par exemple 123, 0). Les nombres signés peuvent également être négatifs (par exemple -42). Ce answer explique la différence de façon approfondie.

7

La plage que vous pouvez stocker dans un espace donné. Par exemple, en citant the docs:

TINYINT[(M)] [UNSIGNED] [ZEROFILL] 

un nombre entier très faible. La gamme signé est -128 à 127. La gamme non signée est 0 à 255.

et de même bien sûr pour d'autres types entiers plus grands.

3

Plage de valeurs possibles, comme vu sur ce table.

Ce n'est pas spécifique à MySQL, c'est une conséquence de la façon dont les entiers sont représentés dans un ordinateur. Le signe prend un bit pour lui-même, ainsi le nombre maximum est (approximativement) divisé par deux. Vous pouvez aussi y penser comme déplacer l'ensemble de la moitié vers le bas. (De plus, comme il y a un nombre pair de nombres disponibles et qu'il n'y a pas deux zéros, vous obtenez un nombre négatif de plus que positif). Si vous voulez en savoir plus, lisez le two's complement.

Questions connexes