/** * RM - die einen bestimmten CO2-Ausstoss berechnet * * @author MB * @version JAN 2019 */ public class RM_CO2 extends Registermaschine { /** * Constructor for objects of class RM_CO2 */ public RM_CO2() { super(50); // die Register zählen wir beginnend bei 1 } public long simpleProgram(){ DLOAD(65); STORE(1); DLOAD(930); STORE(2); DLOAD(2650); STORE(3); LOAD(1); MULT(3); DIV(2); END(); return getAkku(); } public void programmLaden(int i){ register[i] = 1001; register[i+1] = 1002; register[i+2] = 1001; register[i+3] = 1002; register[i+4] = 1001; register[i+5] = 1002; register[i+6] = 1000; register[i+7] = 1005; register[i+8] = 1006; register[i+9] = 1014; } public int programmUndDatenLaden(int i){ if(i + 20 >= MAX){ System.err.println("So viele Register stehen nicht zur Verfügung!"); return -1; } programmLaden(i); programmlaenge = 10; register[i+10] = 65; register[i+11] = 1; register[i+12] = 930; register[i+13] = 2; register[i+14] = 2650; register[i+15] = 3; register[i+16] = 1; register[i+17] = 3; register[i+18] = 2; register[i+19] = 0; register[i+20] = 0; return programmlaenge; } }