Question: in computer simulation lcm linear congruential method is an algorithm...
In computer simulation, LCM (Linear Congruential Method) is an algorithm for producing a sequence of random numbers in a recursive way. In specific, suppose the random numbers to be generated are X0, X1, ... , Xn, then X0 is called the seed, and each Xi+1 is generated from Xi (i = 0, 1, 2...n − 1) by the following equation: Xi+1 = (AXi + C) mod M where A is the multiplier, C is the increment, and M is the modulus. In this question, we want to generate a 6-bit unsigned random integer (range from 0 to 26−1 = 63). Suppose the parameters are A = 13, C = 17, M = 64 (or 2 6 ) and the seed is X0 = 19, please write an Assembly program for ATmega2560 to generate the next random number. In the program, you must use the register R16 to store both the seed and the generated random number.
Here is the psudo-code for the instructions:
R16 ← X_0
R17 ← A
R1:R0 ← R16 * R17
R16 ← R0 (why the value in R1 is discarded?)
R17 ← C
R16 ← R16 + R17 // Find you own way to calculate R16 ← R16 / M