I think Intel didn't anticipate how popular C would become when designing the 8086. In particular, a pointer type that can point to anything is somehow unique with C and incompatible with segmented architectures. According to Scratchy it's difficult to determine which was the worse idea.And let's not forget the consequences of the (awful) segmented architecture of the 8086 where the segment and offset overlapped allowing multiple possible Segment:Offset pairs for the same memory address.All those memory models were ways to optimise for good performance. On those early processors there was no need to carry 32-bits around when all the addresses fit within a 16-bit range. I'm happy to discover similar economies are possible using 32-bit pointers on a 64-bit processor.
Statistics: Posted by ejolson — Fri Oct 24, 2025 10:29 pm