Fora os ponteiros que já conhecemos, que já dão bastante trabalho no começo, existiam os far pointers e os huge pointers.
Me deparei com isso em um livro de perguntas sobre a linguagem C.
Do livro Understanding and Using C Pointers:
Early Intel processors used a 16-bit segmented architecture where near and far pointers were relevant. In today's virtual memory architecture, they are no longer a factor. The far and near pointers were an extension to the C standard to support segmented architecture on early Intel processors.
Embedded Systems Programming, 1998 : http://m.eet.com/media/1172522/9801_74.pdf
Memory models - InfoSec: http://resources.infosecinstitute.com/memory-models/
Choosing a Memory Model - Digital Mars: http://www.digitalmars.com/ctg/ctgMemoryModel.html
The Basic of x86 Architecture: http://www.tenouk.com/Bufferoverflowc/Bufferoverflow1a.html