Re: Language/Compiler for 8/16 bit processor?

amn@ubik.demon.co.uk (Anthony Naggs)
Sat, 22 Jan 1994 13:21:55 GMT

          From comp.compilers

Related articles
Language/Compiler for 8/16 bit processor? mago@legba.sunmexico.Sun.COM (1994-01-19)
Re: Language/Compiler for 8/16 bit processor? strohm@mksol.dseg.ti.com (1994-01-21)
Re: Language/Compiler for 8/16 bit processor? dallison@bfsec.bt.co.uk (1994-01-21)
Re: Language/Compiler for 8/16 bit processor? bazyar@netcom.com (1994-01-21)
Re: Language/Compiler for 8/16 bit processor? amn@ubik.demon.co.uk (1994-01-22)
Re: Language/Compiler for 8/16 bit processor? rehrauer@apollo.hp.com (1994-01-24)
Re: Language/Compiler for 8/16 bit processor? davidm@questor.rational.com (1994-01-25)
Re: Language/Compiler for 8/16 bit processor? prechelt@ira.uka.de (1994-01-27)
Re: Language/Compiler for 8/16 bit processor? torbenm@diku.dk (1994-01-28)
Re: Language/Compiler for 8/16 bit processor? strohm@mksol.dseg.ti.com (1994-01-31)
| List of all articles for this month |
Newsgroups: comp.compilers
From: amn@ubik.demon.co.uk (Anthony Naggs)
Keywords: architecture, design
Organization: Compilers Central
References: 94-01-081
Date: Sat, 22 Jan 1994 13:21:55 GMT

mago@legba.sunmexico.sun.com writes:
> Where can I find information on languages designed for simple 8 bits
> processors? Simple 8 bits processors (like the 6502) have few registers
> and a non-orthogonal instruction set. I remember seeing ads a few years
> ago (10 years ago :) for languages that were designed so it would be easy
> to generate efficient code for these kind of processors.


6502 compilers generally generated an intermediate interpreted code (a la
P-code). I don't think this is strictly necessary for the 6502, and the
extended address space and enhanced instructions of the 65816 should
reduce the space impact of direct compilation. The best coding approach
I've seen for the 6502 should translate to the 65816, vis allocating an
area of zero page (direct page on 658xx) for 'general purpose registers' &
a 'floating point accumulator'. The 'g.p.' registers can be used as data
address pointers, and in combination with X & Y to access data structures.


The pseudo registers need protection in the same way as real registers on
other processors, ie by subroutines preserving them on the stack. The
biggest architectural problem is probably the 64kb physical data/ program
banks.




BTW I'm curious, how widely used is the 65816? And did the WDC65832 or
any other enhancement ever see the light of day? (Email me, and I'll
surmarise here if there is interest).


Regards,
Anthony Naggs
PO Box 1080, Peacehaven,
East Sussex BN10 8PZ
Great Britain
Email: amn@ubik.demon.co.uk
Phone: +44 273 589701
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.