Funktion eines Vergleichsoperator in Java

Guten Tag,

ich habe folgende Frage, Wie funktionieren Vergleichsoperatoren bei Programmiersprachen, z.B. in Java?

Wenn ich zum Beispiel in Java den folgende Anweisung Schreibe:

int a, b;

a= 3;
b= 8;

if(a==b)

-> Nun würde mir Java, den Ausdruck „false“ liefern.

Nur wie kommt das zu Stande?

-> Soweit ich weiss, wird zunächst im Compiler die Zahlen 3, und 8 in „0 und 1 Codiert (a=0100100,b= 10100010)“.

Nur wie funktioniert das bei einen Vergleichsoperator,wie z.B. == oder ?

Wenn ich zum Beispiel in Java den folgende Anweisung Schreibe:

int a, b;
a= 3;
b= 8;
if(a==b)
-> Nun würde mir Java, den Ausdruck „false“ liefern.

Nur wie kommt das zu Stande?

Ich verstehe dein Problem nicht. Das kommt dadurch zustande dass offensichtlich 3 und 8 nicht das gleiche sind.

-> Soweit ich weiss, wird zunächst im Compiler die Zahlen 3,
und 8 in „0 und 1 Codiert (a=0100100,b= 10100010)“.

Also a wird nicht in 0100100 codiert.
a hat den Wert 3 und 3 ist binär 00000011
b hat den Wert 8 und 8 ist binär 00001000

Außerdem wird meist noch das sog. Zweierkomplement oder etwas vergleichbares gebildet, um besser mit negativen Zahlen umgehen zu können. Und int sind in Java dann noch 32bit groß.

Nur wie funktioniert das bei einen Vergleichsoperator,wie z.B.
== oder ?

In dem du beide binären Werte einfach vergleichst. Wie das im Prozessor genau abläuft, hat mit Java aber nichts mehr zu tun, sondern ist eine Frage der darunterliegenden Prozessor-Architektur.