BIPUSH 100
BIPUSH 120
ISUB
Also 120 ist über 100 und ich sage nun subtrahiere, macht er dann 120-100 oder 100-120?
BIPUSH 120
ISUB
Also 120 ist über 100 und ich sage nun subtrahiere, macht er dann 120-100 oder 100-120?
Pop two words from stack; subtract the top word from the second to top word, push the answer.
Pop two words from stack; subtract the top word from the second to top word, push the answer.
Both value1 and value2 must be of type int. The values are popped from the operand stack. The int result is value1 - value2. The result is pushed onto the operand stack.
For int subtraction, a-b produces the same result as a+(-b). For int values, subtraction from zero is the same as negation.
The result is the 32 low-order bits of the true mathematical result in a sufficiently wide two's-complement format, represented as a value of type int. If overflow occurs, then the sign of the result may not be the same as the sign of the mathematical difference of the two values.
Despite the fact that overflow may occur, execution of an isub instruction never throws a run-time exception.
Danke, aber was heißt 120 von 100 abgezogen? Ist das 120-100 oder 100-120?Hast Du mal gesucht:
a) Dokumentation IJVM: Da wird sowas beschrieben sein.
b) es gibt bestimmt Möglichkeiten IJVM Code zu testen.
Beides ist aus meiner Sicht sehr wichtig, wenn man sich mit sowas beschäftigen muss. Denn so Fragen werden ja regelmäßig zu vielen Befehlen kommen und wenn man sowas lernen muss, dann macht es Sinn, wenn man als Übung damit etwas herum spielen kann.
Aber um die Frage zu beantworten:
Aus einer Dokumentation zu ISUB:
Nach deinen zwei BIPUSH Befehlen ist das oberste Element 120 und das zweite von oben die 100. Und es wird somit die 120 von der 100 abgezogen.
Die habe ich nicht verstanden, ich habe auch:
Ja genau, das ist die Bedeutung.Danke, aber was heißt 120 von 100 abgezogen? Ist das 120-100 oder 100-120?
Weil wenn ich sage ich nehme 5 von 10 Äpfeln, so ist das eigentlich 10-5, in dem Falle dann 100-120?
Ja hab vergessen, dass man das testen kann, Konrad hatte recht 100-120!Teste es doch du wirst doch noch wissen wie du den Akku ausgeben lassen kannst.
Konrad sagt er rechnet 100 - 120
Also - 20