Wenn ich zum Beispiel gebe: -2 oder -8, bekomme ich 110, 11000. Aber ich möchte 10, 1000, weil es die minimalen Binärzahlen verwenden muss. Also muss ich einen anderen Weg zu den negativen benutzen. Ich habe versucht, 1 und 0 zu tauschen, bis ich LSB 1 erreiche, aber ich finde keinen Weg.Dezimal zu binär: Zweierkomplement, besserer Ausdruck für Negative
(um Ihnen zu helfen: dekadikos = demical, diadikos = binär, boith = Assistent)
dekadikos = input()
while dekadikos != "end" :
dekadikos = int(dekadikos)
if dekadikos > 0 :
diadikos = bin(dekadikos)
diadikos = (diadikos[2:])
n = int(len(diadikos)) + 1
print(diadikos.zfill(n))
elif dekadikos == 0 :
diadikos = bin(dekadikos)
diadikos = (diadikos[2:])
print(diadikos)
else :
dekadikos = abs(dekadikos)
diadikos = bin(dekadikos)
diadikos = (diadikos[2:])
n = int(len(diadikos)) + 1
diadikos = diadikos.zfill(n)
boithdekadikos = 2**n - dekadikos
diadikos = bin(boithdekadikos)
diadikos = diadikos[2:]
print (diadikos)
dekadikos = input()
In Ihrer minimalen Zweierkomplement-Darstellung, wie würden Sie einen 2 schreiben? – 3Doubloons
demical: 2 wäre binär: 10 – giorgosan
Wenn eine Dezimalzahl 2 10 ist und Sie möchten, dass -2 auch 10 ist, wie unterscheiden Sie dann 10 Bedeutung -2 und 10 Bedeutung 2? – 3Doubloons