16 bit mikro işlemcilerden bu yana Intel belleğe erişim zamanı segment kaydedicilerini kullanmaktadır. Bu kaydediciler program, veri, yığıt, ek ve diğer program kısımlarının segment adreslerini tutmak için kullanılır.
- Bu kaydediciler 16 bittir.
Belleğin segmentlerle organizasyonunun avantajları;
- Belleğin segmentler yardımı ile ayrı ayrı kesitlere bölünmesi işlemci de yürütülen süreçlerin ortaklaşa kullanımını daha etkin olarak destekler.
- Segmentleme komutları adres alanlarını kısıtlamaya ve dolaysıyla programın hacmini azaltmaya imkan verir.
- Çok kullanılan kütüklerin ana bellekte, daha az kullanılan kütüklerin ise yardımcı bellekte tutulmasına olanak sağlayarak verimliliği artırır.
Belleğin segmentlerle organizasyonunun dezavantajları;
- Gerçek adresi hesaplama mecburiyetinin olması, ek hesaplamalar yapılmasını gerektirir. Bu da verimliliğin düşmesine sebep olur.
- 32 bit mikro işlemcide bile 16 bit segment kaydedicilerinin kullanılması 32 bit fiziksel adresin oluşturulmasına ek donanım ve yazılım talep eder.
- Bir bölütün oluşturabildiği maksimum adres kapasitesi 2^20 = 1 Mbyte olarak kalır.
Segment kaydedicileri 16 bit olduğundan dolayı direkt 1 MB bellek uzayına ulaşmak mümkün değildir. Bu durumda adresi 20 bit veya daha büyük yapmak için segment adresi yalnızca belleğin belli bir kısmının başlangıcını göstermektedir. Başka bir kaydedicide ki adres ise söz konusu bölütün içerisindeki bir byte’ın adresini göstermektedir. Bu ikinci kaydedici adres, uzaklık olarak adlandırlır. Böylece adresin bölütler ile organizasyonu sonucu gerçek adres iki kısımdan oluşur.
Fiziksel adresi oluşturmak için segment kaydedicisinde ki bölüt adresini bir 16’lık bit kadar sola kaydırılmış ve boşalan bitlerin yerine 0000(2) yazılması ile elde edilen 20 bitlik adresin uzaklıkla toplanması sonucu bulunur.
Örnek olarak;
Bölüt adresi 1234(16), uzaklık ise 0105(16) olsun. Bu durumda fiziksel adres;
=12340(16)+0105(16)=12445(16) olur.
Intel işlemci mimarilerinde program, veri ve yığıt ayrı ayrı bölütlere yerleştirilir.