MCBXC167-Net Evaluation Board with C166 Compiler: Does anyone know how to create random numbers (0-1023)?
"there are a lot of algorhithms available to calculate (sic) random numbers" Note that "calculate" and "random" are mutually exclusive! Software algorithms are inherently deterministic and therefore can only ever give you pseudo-random numbers - as Erik has already pointed out. Graham Cole recently posted an LFSR-based pseudo-random number generator for C51: http://www.keil.com/forum/docs/thread3202.asp (It seems that Keil have incorporated this concept in C51 v7.08: http://www.keil.com/update/_docs/releasenotes/c51v708.htm) If you want true randomness, you will need to use some external, truly-random process - such as electrical noise, or the user pressing a button.
You can find a more detailed version of my LFSR pseudo-random number generator here: http://www.programmersheaven.com/zone5/cat27/32219.htm It comes with some supporting notes and a couple of interesting links. Although my code is aimed at 8051 family processors, the principles are quite general.