Benchmarks

Integrated into RIDE
The RC-51 'C' compiler is fully integrated into the RIDE interface.

A super-set of ANSI-C
RC-51 implements the ANSI standards for the 'C' language, expanded with keywords that are specific to the 80C51

alien

asm

at

bdata

bit

code

data

generic

idata

interrupt

intrinsic

pdata

sbit

sfr

using

xdata

Memory models
The memory model specifies default location for variable declarations and default types for generic pointers.

Model Default
memory
type
xdata
memory
requirements
stack
location
Notes
TINY data *** idata suitable for the Philips 8x75x processors
= SMALL + ROM(SMALL)
SMALL data no idata/pdata the allocation of variables in external data memory is still possible
COMPACT pdata yes idata/pdata same as LARGE with smaller code size
LARGE xdata yes idata/pdata suitable for big applications
HUGE pdata yes pdata suitable for the most complex applications.
return addresses and parameters are stored in xdata memory.

ROM Models
The ROM model specifies code size and calling mode:

Model Code size Call/Jmp
SMALL < 2K ACALL / AJMP
LARGE < 64 KB LCALL / LJMP

Base Types
Integer Types:

  • 8-bit : " signed char " and " unsigned char ",
  • 16-bit : " signed int " and " unsigned int ",
  • 32-bit : " signed long " and " unsigned long ",

Real Types:

  • 32-bits  : " float " (IEEE754 single precision),

BCD Float:

  • 32-bit words for FLOAT
  • 48-bit words for DOUBLE (by default)
  • 56-bit words for LONG DOUBLE

Pointer Types
Two types of pointers are always available, generic pointers and space qualified pointers.

Code Optimizations
RC-51 optimizes the code to be both compact and fast. Teste show that it produces the most efficient code available in the market.

Parameter Passing
Three cases are distinguished according to the value of REGPARMS and whether the function was declared with the 'alien' qualifier:

  1. NOREGPARMS: No registers aree used for function parameter passing. Instead the internal stack is used for reentrant functions otherwise parameters are stored in the local variable pseudo-static segment
  2. REGPARMS: Registers may be used to pass parameters, which significantly improves system performance. Up to 3 parameters may passed in CPU registers and parameters that can not be passed in registers are processed as for the NOREGPARMS case.
  3. In 'alien' functions the DATA pseudo-static segment is always used. Alien function complies with the PL/M-51 parameter passing convention.

Libraries
RC-51 is supplied with ANSI 'C' standard libraries as described in: math.h, stdio.h, string.h, ctype.h, and stdlib.h standard header files


Genom att skicka ett e-mail till prislista@lawicel.com, så kommer ni
att få den aktuella prislistan samt annan information automatiskt.
På så vis ser ni även vilka produkter vi lagerför.


| LAWICEL huvudmeny | Raisonance Huvudmeny |


© Copyright 1997-2000 LAWICEL. Med ensamrätt.
Vi förbehåller oss rätten att ändra innehållet utan förvarning. Andra produkter och Företag som anges här är varumärken eller registrerade varumärken till respektive Företag eller Ägare till varumärket.


Senast uppdaterad den 31:e Oktober 2000.