Integer (computer science) (Čeština)

různé procesory podporují různé integrální datové typy. Hardware bude obvykle podporovat jak podepsané, tak nepodepsané typy, ale pouze malou pevnou sadu šířek.

výše uvedená tabulka uvádí šířky integrálního typu, které jsou v hardwaru podporovány běžnými procesory. Programovací jazyky na vysoké úrovni poskytují více možností. Je běžné mít integrální typ „dvojité šířky“, který má dvakrát tolik bitů jako největší Typ podporovaný hardwarem., Mnoho jazyků má také typy bitových polí (zadaný počet bitů, obvykle omezený na menší než maximální šířka podporovaná hardwarem) a typy rozsahu (které mohou představovat pouze celá čísla v určeném rozsahu).

některé jazyky, jako Lisp, Smalltalk, REXX, Haskell, Python a Raku podporují libovolná přesná celá čísla (také známá jako nekonečná přesná celá čísla nebo bignums)., Další jazyky, které nepodporují tento koncept jako top-level konstrukt může mít knihovny k dispozici, představují velmi velkých čísel pomocí pole menší proměnných, jako jsou Java třídy BigInteger nebo Perl je „bigint“ balíček. Ty používají tolik paměti počítače, kolik je nutné pro uložení čísel; počítač má však pouze konečné množství úložiště, takže i oni mohou představovat pouze konečnou podmnožinu matematických celých čísel. Tato schémata podporují velmi velká čísla,například jeden kilobajt paměti by mohl být použit k ukládání čísel až do délky 2466 desetinných číslic.,

Typ Boolean nebo Flag je typ, který může představovat pouze dvě hodnoty: 0 a 1, obvykle identifikované s false a true. Tento typ lze uložit do paměti pomocí jediného bitu, ale často je mu poskytnut plný bajt pro usnadnění adresování a rychlosti přístupu.

čtyři-bit množství je známý jako okusovat (při jídle, je menší, než kousnutí) nebo nybble (slovní hříčka na formě slova byte). Jeden nibble odpovídá jedné číslici v hexadecimální a drží jednu číslici nebo znakový kód v binárně kódované desetinné čárce.,

bajty a oktetyedit

Hlavní články: Byte a Octet (computing)

termín byte původně znamenal „nejmenší adresovatelnou jednotku paměti“. V minulosti, 5-, 6-, 7-, 8-, a byly použity 9bitové bajty. Byly také počítače, které by mohly řešit jednotlivé bity („bit-addressed machine“), nebo které by mohly řešit pouze 16 – nebo 32-bitové veličiny („word-addressed machine“). Termín byte se obvykle vůbec nepoužíval v souvislosti s bitovými a slovními stroji.

termín oktet vždy odkazuje na 8bitové množství., Většinou se používá v oblasti počítačových sítí, kde mohou komunikovat počítače s různou šířkou bajtů.

v moderním použití byte téměř vždy znamená osm bitů, protože všechny ostatní velikosti upadly do nepoužívání; bajt se tak stal synonymem pro oktet.

WordsEdit

Hlavní článek: Slovo (architektura počítače)

Prakticky všechny nové desktopové procesory jsou schopny pomocí 64-bit slova, i když embedded procesory s 8 – a 16-bitové slovo, velikosti jsou stále běžné. 36bitová délka slova byla běžná v počátcích počítačů.,

Jednou z významných příčin non-přenositelnost software je nesprávný předpoklad, že všechny počítače mají stejnou velikost slova jako počítač používá programátor. Například, pokud programátor používající jazyk C nesprávně deklaruje jako int proměnnou, která bude použita k uložení hodnoty větší než 215-1, program se nezdaří v počítačích s 16-bit čísla. Tato proměnná měla být deklarována tak dlouho, která má na jakémkoli počítači alespoň 32 bitů., Programátoři mohou také nesprávně předpokládat, že ukazatel může být převeden na celé číslo bez ztráty informace, které mohou pracovat na (některé) 32-bitové počítače, ale nepodaří na 64-bitových počítačích s 64-bitové ukazatele a 32-bitových čísel. Tento problém je vyřešen C99 v stdint.h ve formě intptr_t.

Krátké integerEdit

krátké celé číslo může reprezentovat celé číslo, které může trvat méně úložného prostoru, zatímco má menší rozsah, ve srovnání se standardní číslo, na stejném stroji.

V C se označuje zkratkou., Musí být nejméně 16 bitů a je často menší než standardní celé číslo, ale to není nutné. Odpovídající program může předpokládat, že může bezpečně ukládat hodnoty mezi −(215-1) a 215-1, ale nemusí předpokládat, že rozsah není větší. V Javě je krátký vždy 16bitové celé číslo. V rozhraní Windows API je zkratka datatype definována jako 16bitové podepsané celé číslo na všech strojích.,>−32,768

+32,767 ushort unsigned 2 0 65,535 Java short signed 2 −32,768 +32,767

Long integerEdit

A long integer can represent a whole integer whose range is greater than or equal to that of a standard integer on the same machine.,

V C se označuje dlouho. Musí být alespoň 32 bitů a může nebo nemusí být větší než standardní celé číslo. Odpovídající program může předpokládat, že může bezpečně ukládat hodnoty mezi −(231-1) a 231-1, ale nemusí předpokládat, že rozsah není větší.

Longedit

„long long“ přesměruje zde. Nesmí být zaměňován s dlouhým nebo dlouhým, dlouhým, dlouhým.,

V C99 verze programovací jazyk C a C++11 verze C++, o long long typ je podporován, že má dvojí minimální kapacita standardní long. Tento typ není podporován kompilátory, které vyžadují, aby kód C byl v souladu s předchozím standardem c++, c++03, protože dlouhý dlouhý typ neexistoval v C++03. Pro ANSI/ISO kompatibilní kompilátor, minimální požadavky pro předepsaném rozsahu, že je, −(263-1) do 263-1 pro podepsána a 0 264-1 pro nepodepsané, musí být splněny; nicméně, rozšíření tohoto rozsahu je povoleno., To může být problém při výměně kódu a dat mezi platformami nebo při přímém přístupu k hardwaru. Existuje tedy několik sad záhlaví, které poskytují nezávislé typy přesné šířky platformy. Standardní knihovna C poskytuje stdint.h; to bylo zavedeno v C99 A C++11.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *