Integer conversions too pedantic in 64-bit

Walter Bright newshound2 at digitalmars.com
Wed Feb 16 11:08:52 PST 2011


Don wrote:
> [1] What was size_t on the 286 ?

16 bits

> Note that in the small memory model (all pointers 16 bits) it really was 
> possible to have an object of size 0xFFFF_FFFF, because the code was in 
> a different address space.

Not really. I think the 286 had a hard limit of 16 Mb.

There was a so-called "huge" memory model which attempted (badly) to fake a 
linear address space across the segmented model. It never worked very well (such 
as having wacky problems when an object straddled a segment boundary), and 
applications built with it sucked in the performance dept. I never supported it 
for that reason.

A lot of the effort in 16 bit programming went to breaking up data structures so 
no individual part of it spanned more than 64K.


More information about the Digitalmars-d mailing list