Segmenty o rozmiarze 64KiB to były w trybie rzeczywistym
Żebyś mógł pojąć temat, musisz dowiedzieć się jak się adresuje w trybie rzeczywistym x86. Adresy zapisuje się w takiej postaci SEGMENT:OFFSET. Zarówno segment, jak i offset są 16 bitowe. Segmentem może być na przykład CS (segment kodu), DS i ES (segmenty danych) oraz SS (segment stosu). Offset to po prostu przesunięcie w danym segmencie. Adres liniowy obliczamy według wzoru:
Adres liniowy = Segment * 0x10 + Offset
Czyli na przykład adres 0x1234:0x4321 = 0x12340 + 0x4321 = 0x16661
Segmenty mają rozmiar 64KiB, dlatego, że 2^16 = 65536 = 64 * 1024 = 64KiB.
Jeśli chcesz lepiej zrozumieć ten temat, może zainteresuj się językiem asemblera.