Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/18/84; site cyb-eng.UUCP
Path: utzoo!linus!decvax!ucbvax!ucdavis!lll-crg!mordor!ut-sally!cyb-eng!bc
From: bc@cyb-eng.UUCP (Bill Crews)
Newsgroups: net.micro.pc
Subject: Re: Pointers in MS-C, large model
Message-ID: <711@cyb-eng.UUCP>
Date: Fri, 13-Sep-85 14:11:48 EDT
Article-I.D.: cyb-eng.711
Posted: Fri Sep 13 14:11:48 1985
Date-Received: Sun, 15-Sep-85 05:36:57 EDT
References: <346@wlbr.UUCP> <226@drivax.UUCP>
Organization: Cyb Systems, Austin, TX
Lines: 22

> >    char  *p, x[200000]
> 		 ^^^^^^
> >    p++ = &x[65535];
> > 
> > Where am I wrong here? Did Microsoft REALLY throw us a curve?
> 
> No, iNTEL did. You can't do this even in large model. Even in large model
> a single element must be less than 64K bytes. This is partly because the
> index register is 16 bits. When you think *86 think 16 bits. Thats what
> all the registers are. No larger.
> 
> Alan Fargusson.

In LATTICE's large model, this is valid code, unless one chooses to economize
by using the -s option, which generates *much* tighter code, but which is
nevertheless limited as in the Microsoft compiler.
-- 
  /  \    Bill Crews
 ( bc )   Cyb Systems, Inc
  \__/    Austin, Texas

[ gatech | ihnp4 | nbires | seismo | ucbvax ] ! ut-sally ! cyb-eng ! bc