/** * RM - welche die Fakultaet einer Zahl berechnet, an einem Beispiel * * @author MB * @version JAN 2019 */ public class RM_Fakultaet extends Registermaschine { /** * Constructor for objects of class RM_Fakultaet */ public RM_Fakultaet() { super(40); } public void programmLaden(int i){ register[i] = 1001; register[i+1] = 1002; register[i+2] = 1002; register[i+3] = 1001; register[i+4] = 1002; register[i+5] = 1000; register[i+6] = 1004; register[i+7] = 1010; register[i+8] = 1002; register[i+9] = 1005; register[i+10] = 1002; register[i+11] = 1007; register[i+12] = 1000; register[i+13] = 1014; } public int programmUndDatenLaden(int i){ if(i + 27 >= MAX){ System.err.println("So viele Register stehen nicht zur Verfuegung!"); return -1; } programmLaden(i); programmlaenge = 14; register[i+14] = 8; register[i+15] = 1; register[i+16] = 2; register[i+17] = 1; register[i+18] = 3; register[i+19] = 2; register[i+20] = 3; register[i+21] = 13; register[i+22] = 2; register[i+23] = 1; register[i+24] = 1; register[i+25] = 6; register[i+26] = 1; register[i+27] = 0; return programmlaenge; } }