Am 19.07.2013 22:30, schrieb Stefan Weigel: > >> Jetzt brauche ich noch einen Befehl, um die Dits zu verdrehen: >> aus 1 eine 0 und aus 0 eine 1! > > Da fällt mir spontan =WECHSELN() ein. > > Zum Beispiel so: > > =WECHSELN(WECHSELN(WECHSELN(A1;"0";"x");"1";0);"x";"1") > > Das verwandelt 1010 in 0101. Geht vielleicht auch eleganter.
=RECHTS(DEZINBIN(-BININDEZ(A1)-1);LÄNGE(A1)) Das wandelt die Binärdarstellung in A1 in einen Dezimalwert um. Dieser wird dann negiert, und noch 1 davon abgezogen[1]. Das Ergebnis wird nun wieder in eine Binärdarstellung umgewandelt, und schließlich auf die passende Länge gekürzt. Aber ob das wirklich eleganter ist, wage ich zu bezweifeln. [1] Hintergrund dieser Rechenoperation ist, daß bei Zahlen der negative Wert immer als Zweierkomplement darstellt wird, während eine bitweise Invertierung das Einerkomplement bedeutet. Das Zweierkomplement von z. B. -1 (also der negative Wert von bin 00000101) ist hexadezimal FF, binär 11111111; das wäre aber das Einerkomplement von 0. Um auf das von Dir gesuchte Einerkomplement für -1, also 11111110, zu kommen, musst Du vom Zweierkomplement nochmal den Wert 1 abziehen. Wolfgang -- -- Liste abmelden mit E-Mail an: [email protected] Probleme? http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/ Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de Listenarchiv: http://listarchives.libreoffice.org/de/users/ Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert
