Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 (Tek) 9/28/84 based on 9/17/84; site mako.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!decvax!tektronix!orca!mako!jans From: jans@mako.UUCP (Jan Steinman) Newsgroups: net.micro.68k,net.micro.16k Subject: Re: PDP11s vs the micros Message-ID: <847@mako.UUCP> Date: Tue, 9-Jul-85 13:07:07 EDT Article-I.D.: mako.847 Posted: Tue Jul 9 13:07:07 1985 Date-Received: Thu, 11-Jul-85 20:24:39 EDT References: <1617@hao.UUCP> Reply-To: jans@mako.UUCP (Jan Steinman) Distribution: net Organization: Tektronix, Wilsonville OR Lines: 29 Xref: watmath net.micro.68k:997 net.micro.16k:348 Summary: In article <1617@hao.UUCP> hull@hao.UUCP (Howard Hull) writes: >The double indirect, a concept always difficult to teach to the neophites, is >now declared dead. For all practical purposes, it has been buried in the >nested-line formats of structured programming topology. Not so! Our NS32000 C compiler regularly produces memory indirect references whenever a pointer is declared as an automatic variable: movd 0(4(fp)),rX ;Get the data pointed to by the data pointed ; to by the frame pointer plus four. Although I'm not familiar with PDP11 assembly, it appears that National lacks the general-purpose autoincrement, but adds the (more useful, in my opinion) ability to offset from the first base before indirection, and then you can even throw a scaled index on top of the final address if you want, which means you no longer have to forget your base when double-indirecting through a table. While I agree that most applications are content with the output of a compiler, writing tight assembly code, using all the features a machine has to offer, is not dead. I make heavy use of the NS32000 memory indirect addressing mode, which is excellent for such things as traversing linked-lists in dynamically typed languages. (Get a pointer to an object, look through the object for a terminator, etc.) My only wish is that Nati had given all the general purpose registers this facility, so I wouldn't have to shuffle the SP or FP around so much! -- :::::: Jan Steinman Box 1000, MS 61-161 (w)503/685-2843 :::::: :::::: tektronix!tekecs!jans Wilsonville, OR 97070 (h)503/657-7703 ::::::