Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung Java

GELÖST

Besonderer Befehl in Java

Mitglied: Sokrates

Sokrates (Level 1) - Jetzt verbinden

15.09.2009, aktualisiert 12:30 Uhr, 4371 Aufrufe, 7 Kommentare, 2 Danke

Hallo,

hierbei handelt es sich um folgenden Befehl
01.
^=
Diesen Befehl habe ich in einem Quellcode gefunden, der folgendes Prinzip umschrieb
01.
Feld[1] = Feld[1] + Feld[2]; 
02.
Feld[2] = Feld[1] - Feld[2]; 
03.
Feld[1] = Feld[1] - Feld[2];
Mit dem Befehl sah das dann so aus
01.
Feld[1] ^= Feld[2]; 
02.
Feld[2] ^= Feld[1]; 
03.
Feld[1] ^= Feld[2];

Ich habe nicht wirklich verstanden, was dieser Befehl macht.
Vielleicht weiß es ja einer von euch.

X
Mitglied: Sokrates
15.09.2009 um 12:29 Uhr
Eine Sache noch zu ergänzen, die ich vergaß zu erwähnen:
Es ist relativ, welchen der beiden Methoden ich ausführe, bei beiden kommt das gleiche Ergebnis raus.

X
Bitte warten ..
Mitglied: Sokrates
15.09.2009 um 13:15 Uhr

Das ist also quasi nur eine Vereinfachung?
Das heißt also die Feld[1]-Variable wird irgendwo gespeichert, die Feld[2] auf die erste geschrieben und der vorerst gespeicherte Wert dann vom neuen Feld[2] abgezogen.
Also wieder das obige System.

X
Bitte warten ..
Mitglied: Kentarion
15.09.2009 um 13:50 Uhr
Vereinfacht wird es jetzt nur bedingt.

Man braucht keine Hilfsvariable bei dieser Methode und verwendet sozusagen einen Trick in dem man XOR der binären Daten anwendet.

du kannst dies mit einem einfachen Rechenbeispiel nachstellen.

Feld[1] = 1 = 0001, Feld[2] = 2 = 0010

Erste Operation:

0001 = Feld[1]
0010 = Feld[2]
XOR
0011 = Feld[1]

Zweite Operation:

0011 = Feld[1]
0010 = Feld[2]
XOR
0001 = Feld[2]

Dritte Operation:

0011 = Feld[1]
0001 = Feld[2]
XOR
0010 = Feld[1]

Und voila - die Werte sind vertauscht - Feld[1] = 2 = 0010 und Feld[2] = 1 = 0001


XOR Tabelle zur Erinnerung - siehe Link:

0 und 0 = 0
0 und 1 = 1
1 und 0 = 1
1 und 1 = 0

Einfach nachrechnen
Bitte warten ..
Mitglied: AndreasHoster
15.09.2009 um 13:53 Uhr
>Das heißt also die Feld[1]-Variable wird irgendwo gespeichert, die Feld[2] auf die erste geschrieben und der vorerst gespeicherte Wert dann vom neuen Feld[2] abgezogen.
Nein, macht er nicht. Und wie man nach Lektüre des Wikipedia Artikels auf die Idee kommen kann ist mir auch nicht klar. Vermutlich nicht gelesen, oder?
Er macht eine bitweise XOR Verknüpfung der beiden Werte.
Das bei entsprechenden Integerwerten es so aussehen kann wie oben ist richtig, aber er arbeitet anders.

Und ich würde Dir mal das Buch Thinking in Java empfehlen, gibts als kostenlosen Download hier: http://www.mindview.net/Books/TIJ/
Bitte warten ..
Mitglied: Sokrates
15.09.2009 um 14:17 Uhr
Zitat von Kentarion:
Vereinfacht wird es jetzt nur bedingt.

Man braucht keine Hilfsvariable bei dieser Methode und verwendet
sozusagen einen Trick in dem man XOR der binären Daten anwendet.

du kannst dies mit einem einfachen Rechenbeispiel nachstellen.

Feld[1] = 1 = 0001, Feld[2] = 2 = 0010

Erste Operation:

0001 = Feld[1]
0010 = Feld[2]
XOR
0011 = Feld[1]

Zweite Operation:

0011 = Feld[1]
0010 = Feld[2]
XOR
0001 = Feld[2]

Dritte Operation:

0011 = Feld[1]
0001 = Feld[2]
XOR
0010 = Feld[1]

Und voila - die Werte sind vertauscht - Feld[1] = 2 = 0010 und
Feld[2] = 1 = 0001


XOR Tabelle zur Erinnerung - siehe Link:

0 und 0 = 0
0 und 1 = 1
1 und 0 = 1
1 und 1 = 0

Einfach nachrechnen


Danke

X
Bitte warten ..
Mitglied: Sokrates
15.09.2009 um 14:18 Uhr
Zitat von AndreasHoster:
>Das heißt also die Feld[1]-Variable wird irgendwo
gespeichert, die Feld[2] auf die erste geschrieben und der vorerst
gespeicherte Wert dann vom neuen Feld[2] abgezogen.
Nein, macht er nicht. Und wie man nach Lektüre des Wikipedia
Artikels auf die Idee kommen kann ist mir auch nicht klar. Vermutlich
nicht gelesen, oder?
Er macht eine bitweise XOR Verknüpfung der beiden Werte.
Das bei entsprechenden Integerwerten es so aussehen kann wie oben ist
richtig, aber er arbeitet anders.

Und ich würde Dir mal das Buch Thinking in Java empfehlen, gibts
als kostenlosen Download hier: http://www.mindview.net/Books/TIJ/


Gelesen schon, nur handelt es sich bei mir nicht um einen fachspezifischen Informatik-Studenten sondern einen Oberstufenschüler.

X
Bitte warten ..
Ähnliche Inhalte
Java
Java konsole per java befehl einblenden
gelöst Frage von deinernstjetztJava6 Kommentare

Hallo, ich habe eine Konsolenanwendung programmiert, allerdings ist das Problem, das man diese nicht mit klick auf das .jar ...

Java
Auführung mehrere Command-line Befehle mit Java
gelöst Frage von TobiasedJava3 Kommentare

Hallo Zusammen, ich möchte gern ein kleines Script schreiben, welches mir mehrere CMD-Befehle hineinander ausführt. Mein Problem ist nun ...

Hardware
Curved TV, was ist das Besondere?
Frage von SarahLauerbachHardware4 Kommentare

Man hört im Moment ja so super viel über die geschwungenen Displays beim Fernseher Aber was genau ist so ...

Netzwerkmanagement
Besonderen User für Cisco Switche anlegen
gelöst Frage von michael1306Netzwerkmanagement7 Kommentare

Hallo, im Moment muss ich bei in der Firma Cisco Switche austauschen und erneuern. Dazu gehört auch die Programmierung ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 1 TagLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 2 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 2 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 2 TagenSicherheit10 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Batch & Shell
Meltdown Microsoft Prüf Script - .zip Datei leider leer
gelöst Frage von MasterBlaster88Batch & Shell13 Kommentare

Hallo zusammen, ich patche gerade unsere Windows Server bzgl. der Meltdown Lücke. Patch vorhanden, Reg Keys gesetzt Um das ...

Batch & Shell
Shell-Skript - Syntax error: Unterminated quoted string
Frage von newit1Batch & Shell13 Kommentare

Hallo Ich schreibe ein Skript das eine CSV-Datei in eine mySQL Datenbank schieben soll. Bekomme nach start des Skrips ...

E-Mail
Erfahrungen mit hMailServer gesucht
Frage von it-fraggleE-Mail10 Kommentare

Hallo, meine neue Stelle möchte einen eigenen Mailserver. Ich als Linuxkind war direkt geistig mit Postfix dabei. Leider wollen ...

Entwicklung
VBS: alle PDF-Dateien in einem Ordner gleichzeitig öffnen
gelöst Frage von JuweeeEntwicklung9 Kommentare

Hallo, ich habe in deiner Ordnerstruktur (.\Tagesberichte\xx.18\) mehrere dynamische PDF-Formulare (mit LCD erstellt). Die Berichtsformulare sind im Layout alle ...