Egész (informatika)

A Wikipédiából, a szabad enciklopédiából

Az egész, a programozási nyelvekben leggyakrabban angolul integer, ("int") az egyik legegyszerűbb adattípus neve. Általában az integer adattípus a matematikai értelemben vett egész számok részhalmaza, a számítógépes megvalósítás korlátai (legnagyobb tárolható egész) miatt.

A memória technikai megvalósításától, illetve a műveletvégző egység képességétől függően különböző, de minden esetben véges méretű egész számok miatt kell korlátozni a kezelhető és/vagy tárolható legnagyobb és legkisebb egész szám értékét (gyakran e szám bitekben mért hosszát a 2 hatványai (4, 8, 16, stb.) határozzák meg).

Sebességkritikus programoknál fontos lehet, hogy az egész típusokat amiket használunk úgy válasszuk meg hogy az az architektúra bitszámához illeszkedjen, mert a számítógép ezeket a számokat tudja a leggyorsabban kezelni.

Általános megszámlálható típusok[szerkesztés | forrásszöveg szerkesztése]

Bitek Név Tartomány (ha kettes komplemens módszerrel ábrázoljuk az előjeles egészeket) Decimális számjegyek Felhasználás
4 nibble, semioctet
Előjel nélküli: 0 .. +15 1 BCD (binárisan kódolt decimális), egyetlen decimális számjegy ábrázolása.
8 bájt (byte, octet) Előjeles: −128 .. +127 3 ASCII karakterek, C/C++: char, C/C++: uint8_t, int8_t, Java: byte, C#: byte, T-SQL: tinyint, Delphi: Byte, Shortint
Előjel nélküli: 0 .. +255 3
16 félszó (halfword), rövid egész (short int) Előjeles: −32 768 .. +32 767 5 UCS-2 karakterek, C/C++: short, int (minimum), uint16_t, int16_t, Java: short, C#: short, Java: char, Delphi: Word, Smallint
Előjel nélkül: 0 .. +65 535 5
32 szó (word), hosszú egész (long integer), duplaszó (doubleword, longword) Előjeles: −2 147 483 648 to +2 147 483 647 10 UCS-4 karakterek, Truecolor alfa csatornával (alpha), C/C++: int, uint32_t, int32_t, Java: int, C#: int, Delphi: Cardinal, Integer
Előjel nélküli: 0 .. +4 294 967 295 10
64 duplaszó (doubleword, longword, long long, quad, quadword, int64) Előjeles: −9 223 372 036 854 775 808 .. +9 223 372 036 854 775 807 19 C/C++: long long, uint64_t, int64_t, Java: long, C#: long, Delphi: Int64
Előjel nélküli: 0 .. +18 446 744 073 709 551 615 20
n n-bites egész
(általános eset)
Előjeles: (-2^{n-1}) .. (2^{n-1} -1) \lceil (n-1) \log_{10}{2} \rceil Ada range -2**(n-1)..2**(n-1)-1
Előjel nélküli: 0 .. (2^{n}-1) \lceil n \log_{10}{2} \rceil Ada range 0..2**n-1, Ada mod 2**n


Elméletileg, a digitális számítógépek különböző modelljei, például a Turing-gép végtelen (de megszámlálható) kapacitással rendelkeznek mind tárolás, mind pedig műveletvégzés szempontjából.