x86 processors had all sorts of complex modes and memory segmentation in generations from 16-bit to 32-bit to 64-bit.
These days, with modern OSs using modern processors in modern operating modes, you donβt need to worry about memory segments, but you can still run legacy applications on legacy OSs on modern processors, in which case I believe that the processors are running into a special aging mode (protected mode, real mode, etc.).
So segment registers exist for backward compatibility reasons, but is this the only reason?
Are there modern segment registers? Or have they just turned into general registers these days, which simply have names that reflect their historical functions?
This question was inspired by comments on this old thread: Why use the mov instruction?
x86 cpu-registers history memory-segmentation
hippietrail
source share