Am 14 Nov 2003 13:18 meinte Tom Jennings:
> On Fri, 2003-11-14 at 12:00, Hans Franke wrote:
> > > /* Fill a block of memory with 0's. */
> > > void foofill (start, end)
> > > {
> > > char *start, *end; /* memory pointers */
> > >
> > > while (start < end) { /* until we reach the end... */
> > > *start++= 0; /* write 0, incr pointer... */
> > > }
> > > }
> > So, where's the problem?
> > start and end are memory ponters, and thus belog to one
> > segemt.
> So, why do you assume I should/must/want to address only within a
> segment?
Because the relation between the segments are none of the
business of a user programm?
> > The whole operation is meaningless if they would
> > belong to different segments. The comparsion generated
> > for the while is a simple 16 bit compare.
> ...which technique [16-bit compare] will cause unpleasant side effects,
> should the memory block be 65537 bytes long, for example.
Now, show me on a 16 Bit CPU, like the 8086 a segment size
larger than 64K? x:10001 just doesn't work.
Gruss
H.
--
VCF Europa 5.0 am 01./02. Mai 2004 in Muenchen
http://www.vcfe.org/
Received on Fri Nov 14 2003 - 15:32:51 GMT