Číselný rozsah

Počítače pracují s čísly v určitém rozsahu. Hradla v procesorech jsou konstruována tak, že umí pracovat s čísly ve 32 nebo 64 bitovém rozsahu a paměť je zpravidla konstruovaná tak, že obsahuje skupiny 32 nebo 64 flip-flopů.

Čísla v počítačích nemůžou být nekonečná. Nezapomeň na to, že každé číslo je reprezentováno konkrétními fyzickými obvody co reprezentují konkrétní signály, konkrétní bity.

Ty obvody jsou příšerně mrňavý ale nejsou nekonečně mrňavý. Když vyrábíš procesor, musíš pracovat i s omezeným prostorem, kam umisťovat jednotlivá hradla/tranzistory.

Ajťáci si historicky zvykli na práci s čísly, které jsou v rozsahu 28, 216, 232, 264 protože s těmito rozsahy pracují procesory a tyto rozsahy se ukládají do paměti.

Procesory rozlišují čísla určitého rozsahu nebo desetinná čísla určitého rozsahu. K záporným i desetinným číslům se dostanu v následujících kapitolách.

Nejčastější číselné rozsahy

28 je bajt a to je prostě a jednoduše číslo, které je na fyzické úrovni reprezentované osmi obvody a tudíž osmi bity. Je to číslo mezi 00000000 a 11111111. Dost často v IT narazíš na bajtový rozsah 0 – 255, někdy 1 – 256 a pokud číslo může být i záporné pak -128 – +127 (záporná čísla popíšu v příští kapitole).

216 se v programovacích jazycích (k těm se dostanu později) často říká short (někdy int16). Toto je také velmi známý číselný rozsah 0 – 65535 (rozsah se zápornými čísly -32768 – +32767).

232 se velice univerzálně říká integer nebo int (nebo int32). Toto je nejčastěji používaný číselný rozsah. Buď to je 0 – 4294967296 což si určitě nikdo nezapamatuje, spíš mi přijde, že je mi mnohem povědomější pohled na hodnoty -2147483648 – +2147483647 aniž bych z hlavy znal každou cifru.

264 se často označuje za long (někdy int64). Tohle číslo má 20 cifer a pamatuje si ho jenom magor.

word označuje nějaký bitový rozsah, záleží na kontextu. word originálně znamená bitový rozsah, s jakým pracuje procesor (v dnešní době 32/64).

Souhrn

  • Počítače pracují s čísly v určitém rozsahu
  • Počítače rozlišují celá nebo desetinná čísla
  • 32 bitovému číslu se tradičně říká integer nebo int
  • Ostatní názvy nejsou tak ustálené a všude stejné: 16bit = short, 64 bit = long
  • Pokud děláš ajťáka dost dlouho tak po čase si někeré hodnoty zapamatuješ.