1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Bitweises Not

  • muckel
  • 17. Februar 2010 um 16:35
  • Unerledigt
  • muckel
    2
    muckel
    Mitglied
    Punkte
    15
    Beiträge
    2
    • 17. Februar 2010 um 16:35
    • #1

    Hallo,
    ich verzweifel gerade:

    das Bitweise not (~), wie funktioniert das?

    3 = 00000011

    ~ 00000011 = 11111100

    Laut Java kommt aber -4 Raus, egal welches x ich benutze, es kommt immer als Ergebnis -(x+1) raus. Wieso? Wie kann ich das von Hand im Binärsystem nachvollziehen?

    LG

  • Erklärbär
    8
    Erklärbär
    Mitglied
    Reaktionen
    6
    Punkte
    661
    Beiträge
    130
    • 17. Februar 2010 um 16:38
    • #2

    Negative Zahlen werden im 2er-Komplement abgebildet
    http://de.wikipedia.org/wiki/Zweierkomplement

    einfach nur genial: wenn man im wort "Mama" 4 buchstaben ändert, dann hat man auf einmal "Bier"

  • muckel
    2
    muckel
    Mitglied
    Punkte
    15
    Beiträge
    2
    • 17. Februar 2010 um 16:52
    • #3

    Danke,
    aber ich verstehe immer noch nicht, wieso Java mit -4 als Ergebis von ~3 ausspuckt.

    1) Ersteinmal 3 in Binärform bringen, also 011
    2) Invertieren = 100
    3) 1 addieren = 101
    4) rechne ich 101 wieder ins Dezimalsystem um =-(1*2^2) + 0*2^1 + 1*2^1 = -4+1 = -3

    Also macht Java Schritt 3 nicht?

  • lewurm
    7
    lewurm
    Mitglied
    Reaktionen
    17
    Punkte
    437
    Beiträge
    81
    • 17. Februar 2010 um 17:06
    • #4

    weil du das Einerkomplement mit ~ bildest. um negative zahlen zu erhalten brauchst du nicht auf bitebene gehen, sondern es reicht z.b. eine multiplikation mit -1 oder einfach eine zuweiseung der art

    Code
    var = -var;

    lolwoot

  • Ringding
    11
    Ringding
    Mitglied
    Reaktionen
    12
    Punkte
    1.237
    Beiträge
    244
    • 19. Februar 2010 um 12:00
    • #5
    Zitat von muckel

    Also macht Java Schritt 3 nicht?

    Nein. Wieso sollte es auch? Du hast ja hingeschrieben:

    ~x

    und nicht

    ~x + 1

  • Maximilian Rupp 27. Dezember 2024 um 00:26

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung