Well, I guess it's as much a matter of viewpoint and semantics as anything. The PIC doesn't really fit the usual collection of processors, so I am not sure that the usual definitions fit all that well. The PIC's designers like to describe it as "RISC-like", but to me it seems a lot more like a classic single-accumulator machine that just doesn't have a very big ram, and not like a RISC machine with a bunch of registers (and usually no accumulator). If it's a RISC machine with a bunch of registers, then someone lost the main memory! As a single-accumulator machine, the fact that the rotates don't work on W and that MOVLW exists only for W and not for any other register seem pretty non-orthogonal to me. I am used to thinking of an orthogonal instruction set being more like that of the 68000, which comes about as close to orthogonality as any mass-produced microprocessor, and it's got so many exceptions that it doesn't do a compiler writer much good. What the PIC CPU really is, in my opinion, is a very clever job of getting a usable processor out of a very small number of flipflops and gates. Look at a photomicrograph of one of the chips. The CPU of the 16F877 in the poster I've got on my wall is barely larger than the USART, and is dwarfed by the RAM and the ROM. > -----Original Message----- > From: James Paul [mailto:jim@JPES.COM] > Sent: Thursday, July 05, 2001 3:00 PM > To: PICLIST@MITVMA.MIT.EDU > Subject: Re: [OT]: Making of a C compiler > > > Don, > > I disagree with you about the Orthogonality of the PIC's. That's > one of it's claims to fame. Or at least so I was told, and from > what I've experienced. Now, how that relates to writing a C > compiler for them, I haven't a clue. But from a programmers point > of view, all instructions operate on all registers the same way as > far as I can tell. Correct me if I'm wrong, but I just disagree > with this point. > > Regards, > > Jim > > > > > On Thu, 05 July 2001, Don Hyde wrote: > > > > > Well, the compiler guys just don't want to mess with it. > The PIC's is about > > as un-orthogonal (and compiler-unfriendly) as you can get, > but there are > > several compilers for them, and some of them are pretty good. > > > > Orthogonality in an instruction set means that it has a > bunch of registers > > that are alike, with instructions that all work the same on all the > > registers. Very few actual processors are completely > orthogonal, and some > > of the most common (such as Intel's and PIC's and RISC > machines) are very > > far from that ideal of convenience for compiler writers. > > > > > -----Original Message----- > > > From: Simon-Thijs de Feber [mailto:stdf23173@YAHOO.CO.UK] > > > Sent: Thursday, July 05, 2001 2:42 PM > > > To: PICLIST@MITVMA.MIT.EDU > > > Subject: [OT]: Making of a C compiler > > > > > > > > > Hello all, > > > > > > No this is not the next proposal for a C-compiler. > > > I was just wondering how the compiler is made. > > > > > > teh company i work for has a processor of which they > > > cannot make a c compiler just because it has no > > > Orthogonal Instruction Set. > > > > > > This does not mean anything to me !! > > > > > > Please can some one elaborate ??? > > > > > > > > > grtz, > > > > > > > > > Simon > > > > > > > > > ____________________________________________________________ > > > Do You Yahoo!? > > > Get your free @yahoo.co.uk address at http://mail.yahoo.co.uk > > > or your free @yahoo.ie address at http://mail.yahoo.ie > > > > > > -- > > > http://www.piclist.com hint: To leave the PICList > > > mailto:piclist-unsubscribe-request@mitvma.mit.edu > > > > > > > > > > -- > > http://www.piclist.com hint: To leave the PICList > > mailto:piclist-unsubscribe-request@mitvma.mit.edu > > jim@jpes.com > > -- > http://www.piclist.com hint: To leave the PICList > mailto:piclist-unsubscribe-request@mitvma.mit.edu > > -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu