In old days when Intel introduce hybrid 8bit/16bit family of processors named iAPX 86.(8086 etc) Using this 8bit code changed to the 16bit architecture by 16bit pointers operating with in overlapping segments. A huge pointer is 16:16(Where additional code negotiated segment boundaries). A far pointer is 16:16(Where we can only offset with in the same segment). A near pointer is 16bits.