Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Zarovnanie dátovej štruktúry sa týka polohy jej členov v pamäti. Niektoré procesory vyžadujú, aby boli údaje zarovnané na určitých hraniciach, ako sú 4-bajtové alebo 8-bajtové hranice. Ak dátová štruktúra nie je správne zarovnaná, procesor môže musieť vykonať prácu navyše, aby získal prístup k svojim členom, čo môže spomaliť výkon.
Výplň štruktúry možno použiť na zabezpečenie toho, aby dátová štruktúra spĺňala požiadavky na zarovnanie cieľového procesora. Zvážte napríklad nasledujúcu štruktúru:
```
struct Point {
int x;
int y;
};
```
Na 32-bitovom procesore je táto štruktúra dlhá 8 bajtov, pričom člen `x` začína na adrese pamäte 0 a člen `y` začína na adrese pamäte 4. Ak však procesor vyžaduje 4 bajtové zarovnanie, ` Člen y` by v skutočnosti začínal na adrese pamäte 8, pričom by medzi týmito dvoma členmi zostala 4-bajtová medzera. Táto medzera je známa ako výplň .
Výplň štruktúry možno použiť aj na zlepšenie výkonu výpočtov s pohyblivou rádovou čiarkou. Niektoré procesory používajú špeciálne inštrukcie pre operácie s pohyblivou rádovou čiarkou, ktoré vyžadujú, aby boli operandy zarovnané na určitých hraniciach. Pridaním výplne do dátovej štruktúry môžete zabezpečiť, aby boli jej členy s pohyblivou rádovou čiarkou správne zarovnané, čo môže zlepšiť výkon výpočtov s pohyblivou rádovou čiarkou.
Množstvo výplne požadované pre dátovú štruktúru závisí od cieľového procesora a požiadaviek na zarovnanie jeho členov. Niektoré kompilátory poskytujú možnosti automatického pridania výplne do štruktúr alebo môžete výplň pridať manuálne vložením prázdnych členov do štruktúry.