2010-07-01 13 views

risposta

23

numeri senza segno non hanno il segno meno. Il numero senza segno può essere solo positivo o zero (ad es. 123, 0). Anche i numeri firmati possono essere negativi (ad es. -42).

Questa answer spiega la differenza accuratamente.

7

L'intervallo che è possibile memorizzare in un dato spazio. Per esempio, citando the docs:

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

Un piccolo numero intero. La gamma firmato è -128 a 127. La gamma senza segno è 0 a 255.

e allo stesso modo, naturalmente, per altri tipi interi più grandi.

3

gamma di possibili valori, come si vede in questa table.

Non è specifico di MySQL, è una conseguenza di come gli interi sono rappresentati in un computer. Il segno prende un bit per se stesso, quindi il numero massimo viene (approssimativamente) dimezzato. Puoi anche pensarci come se spostassi il tutto di metà campo verso il basso. (Inoltre, poiché c'è un numero pari di numeri disponibili e non ci sono due zeri, si ottiene un numero negativo in più rispetto al positivo). Se vuoi saperne di più, leggi su two's complement.

Problemi correlati