Menu
Coddy logo textTech

Co to jest bajt?

Bajt to jednostka danych cyfrowych złożona z 8 bitów, które razem mogą przedstawić 256 różnych wartości, od 0 do 255. W większości komputerów jest to najmniejsza jednostka pamięci z własnym adresem, a rozmiary plików liczy się w bajtach.

Autor: Kevin Spektor, Współzałożyciel i CTO

Aktualizacja: 24 września 2026

128
64
32
16
8
4
2
1
Dziesiętnie65
Hex41
Znak ASCIIA
  • 48H
  • 69i
  • 20␣
  • F0 9F 98 80😀

Znaki: 4, bajty: 7

Litera A zapisana w twoim komputerze to liczba 65, a liczba 65 jest zapisana jako osiem bitów: 01000001. Taka grupa ośmiu bitów to bajt. Adresy pamięci liczą bajty, rozmiary plików liczą bajty, a prawie każdy typ danych w języku programowania ma długość wyrażoną całkowitą liczbą bajtów.

Dlaczego bajt ma 8 bitów

Słowo "byte" wymyślił Werner Buchholz w 1956 roku, gdy pracował nad komputerem Stretch w IBM. Napisał je przez y, żeby nie mylono go z "bit". Wczesne komputery używały grup różnej wielkości, często 6-bitowych, co wystarczało na wielkie litery i cyfry, ale nie na małe litery.

System/360 firmy IBM, wydany w 1964 roku, używał bajtów 8-bitowych, a reszta branży poszła jego śladem. Osiem bitów daje 256 wartości, czyli miejsce na wielkie i małe litery, cyfry, znaki interpunkcyjne i kody sterujące. Osiem to też potęga dwójki, więc bajt dzieli się równo na dwie połowy po 4 bity, a każdą zapisuje się jedną cyfrą szesnastkową. Standardy sieciowe wciąż mówią "oktet", gdy muszą jasno zaznaczyć, że chodzi dokładnie o 8 bitów.

Co mieści jeden bajt

Bajt ma 256 możliwych wzorów, od 00000000 do 11111111. Programy odczytują je na kilka standardowych sposobów:

  • jako liczbę bez znaku od 0 do 255;
  • jako liczbę ze znakiem od -128 do 127;
  • jako jeden znak, na przykład A (65) albo ! (33);
  • jako dwie cyfry szesnastkowe, od 00 do FF.

Typ bytes w Pythonie to ciąg takich wartości i odrzuca wszystko spoza zakresu od 0 do 255:

b'Hi!'
[72, 105, 33]
01001000 48
ValueError: bytes must be in range(0, 256)

Nie każdy znak mieści się w jednym bajcie. UTF-8, kodowanie używane przez większość internetu, zapisuje 128 znaków ASCII po 1 bajcie, a wszystkie pozostałe na 2 do 4 bajtach:

A 1 bytes: [65] 41
é 2 bytes: [195, 169] c3a9
€ 3 bytes: [226, 130, 172] e282ac
😀 4 bytes: [240, 159, 152, 128] f09f9880

Dlatego długość napisu liczona w znakach i jego rozmiar w bajtach mogą się różnić.

Bit a bajt

Bit to pojedyncze 0 albo 1. Bajt to 8 bitów. Obie jednostki łatwo pomylić, bo ich symbole różnią się tylko wielkością litery:

BitBajt
Co to jestJedna cyfra dwójkowa8 bitów
Możliwe wartości2 (0 lub 1)256 (od 0 do 255)
Symbolb (mała litera)B (wielka litera)
Zwykle mierzyPrędkość sieci: Mb/s, Gb/sPamięć i rozmiar plików: kB, MB, GB
PrzykładŁącze 100 Mb/sZdjęcie 5 MB

Żeby zamienić bity na bajty, podziel przez 8. Łącze 100 Mb/s przesyła najwyżej 12,5 MB na sekundę, więc pobranie zdjęcia 5 MB zajmie na nim co najmniej 0,4 sekundy.

Kilobajty, megabajty i gigabajty

Większe jednostki występują w dwóch systemach, a różnica między nimi sprawia, że nowy dysk wygląda w Windowsie na mniejszy niż na etykiecie.

Dziesiętne (SI)BajtyDwójkowe (IEC)Bajty
kilobajt (kB)1000kibibajt (KiB)1024
megabajt (MB)1 000 000mebibajt (MiB)1 048 576
gigabajt (GB)1 000 000 000gibibajt (GiB)1 073 741 824
terabajt (TB)1 000 000 000 000tebibajt (TiB)1 099 511 627 776

Producenci dysków, prędkości sieci i macOS (od wersji 10.6 z 2009 roku) używają jednostek dziesiętnych. Rozmiary RAM i Windows używają jednostek dwójkowych, ale Windows oznacza je jako KB, MB i GB. IEC wprowadziła nazwy kibibajt, mebibajt i gibibajt w 1998 roku, żeby skończyć z tym zamieszaniem, choć wiele programów nadal ich nie używa.

1.0 TB (decimal, used on the box)
931.3 GiB (binary, what Windows calls GB)
12.5 MB per second

Nic nie zginęło. Dysk mieści bilion bajtów obiecany na pudełku; Windows po prostu dzieli trzy razy przez 1024 zamiast przez 1000.

Bajty w kodzie

Każda wartość w pamięci zajmuje całkowitą liczbę bajtów. W C tę liczbę podaje sizeof. char ma z definicji dokładnie 1 bajt, a w obecnych 64-bitowych systemach Linux, macOS i Windows short ma 2 bajty, int 4, a double 8. Tablica 1000 wartości int zajmuje więc 4000 bajtów.

printf("%zu\n", sizeof(int));   /* prints 4 */

Typ byte w Javie jest zawsze ze znakiem, od -128 do 127, więc wartość taka jak 200 się w nim nie mieści:

byte b = (byte) 200;   // b is -56: the same 8 bits, read as signed

Surowe dane, takie jak obrazy, pliki skompresowane i pakiety sieciowe, obsługuje się jako tablicę bajtów: bytes i bytearray w Pythonie, byte[] w Javie, Uint8Array w JavaScripcie. Otwarcie pliku w Pythonie w trybie "rb" daje jego bajty zamiast tekstu.

Skróty (hashe) i sumy kontrolne też mierzy się w bajtach. Skrót SHA-256 ma 32 bajty, dlatego wyświetla się jako 64 znaki szesnastkowe, a suma kontrolna CRC32 ma 4 bajty. Generator hashy pokazuje obie dla dowolnego tekstu.

Co dalej

O jednostce mniejszej od bajtu przeczytasz na stronie co to jest bit, a o tym, jak bajty pomagają wykrywać uszkodzone pliki, na stronie co to jest suma kontrolna. Konwerter systemów liczbowych zamienia dowolny bajt między systemem dziesiętnym, dwójkowym i szesnastkowym, a przewodnik po typach danych w C podaje rozmiar każdego typu w C w bajtach.

Najczęściej zadawane pytania

Jak nazywa się 8 bitów 11111111?
Osiem bitów to jeden bajt, a 11111111 to bajt, w którym każdy bit ma wartość 1. Odczytany jako liczba bez znaku daje 255, największą wartość, jaką może przechować bajt, zapisywaną szesnastkowo jako FF. Odczytane jako bajt ze znakiem w kodzie uzupełnień do dwóch te same bity oznaczają -1.
Dlaczego 8 bitów to 1 bajt?
Osiem to konwencja, która wygrała, a nie prawo natury. System/360 firmy IBM, wydany w 1964 roku, używał bajtów 8-bitowych, a niemal każdy komputer od tamtej pory poszedł tą drogą. Osiem bitów daje 256 wartości, co wystarcza na wielkie i małe litery, cyfry i symbole, a 8 jest potęgą dwójki, co upraszcza sprzęt i obliczenia.
Dlaczego 4 bity nazywa się nibble?
Nibble to połowa bajtu, a nazwa jest angielską grą słów: byte brzmi jak bite (kęs), a nibble to mały kęs. Cztery bity dają 16 wartości, dokładnie jedną cyfrę szesnastkową, więc bajt zawsze zapisuje się jako dwie cyfry szesnastkowe, po jednej na każdy nibble. Czasem pisze się też nybble.
Czy 1 bajt to 4 bity?
Nie. Jeden bajt to 8 bitów. Cztery bity to połowa bajtu, nazywana nibble.
Co jest większe, bajty czy GB?
Gigabajt jest dużo większy: to miliard bajtów (1 000 000 000) w systemie dziesiętnym, którego używają producenci dysków, albo 1 073 741 824 bajty w systemie dwójkowym, którego używa Windows. Bajt jest jednostką podstawową, a kilobajty, megabajty i gigabajty są jego wielokrotnościami.
Jak wygląda jeden bajt?
Jeden bajt to rząd ośmiu zer i jedynek, na przykład 01000001. Ten wzór to liczba 65, która jest też kodem litery A w ASCII. Programiści zwykle zapisują bajt jako dwie cyfry szesnastkowe, więc 01000001 staje się 41.
Ilustracja języków programowania w Coddy

Ucz się programowania z Coddy

ZACZNIJ