[gelöst] binär rechnen (AND / OR / XOR)
Moderator: Moderatoren
[gelöst] binär rechnen (AND / OR / XOR)
Hallo,
irgendwie finde ich keine Funktionen, um einfache binäre Rechnungen durchzuführen.
Damit meine ich nicht einfache logische Wahr-Falsch Abfragen und deren Verknüpfungen sondern die elementaren Rechnungen wie z.B.:
2 OR 4 = 10
oder
7 AND 2 = 2
Hintergrund: ich möchte größere Zahlen im Binärformat darstellen.
Die Funktion DEZINBIN kann nur max. 10 Bit verarbeiten, also max. die Dezimalzahl 1023.
Ich möchte daher die Zahl jeweils in 8-Bit-Teile durch maskieren aufsplitten und dann mit diesen 8-Bit-Blöcken weiterrechnen.
Kennt jemand die Operatoren für binäre Rechenoperationen?
Oder kennt jemand eine "Long"-Variante der Funktion DEZINBIN, welche mit mindestens 24-Bit umgehen kann?
Danke vorab!
WinXP; Oo3.1.1
irgendwie finde ich keine Funktionen, um einfache binäre Rechnungen durchzuführen.
Damit meine ich nicht einfache logische Wahr-Falsch Abfragen und deren Verknüpfungen sondern die elementaren Rechnungen wie z.B.:
2 OR 4 = 10
oder
7 AND 2 = 2
Hintergrund: ich möchte größere Zahlen im Binärformat darstellen.
Die Funktion DEZINBIN kann nur max. 10 Bit verarbeiten, also max. die Dezimalzahl 1023.
Ich möchte daher die Zahl jeweils in 8-Bit-Teile durch maskieren aufsplitten und dann mit diesen 8-Bit-Blöcken weiterrechnen.
Kennt jemand die Operatoren für binäre Rechenoperationen?
Oder kennt jemand eine "Long"-Variante der Funktion DEZINBIN, welche mit mindestens 24-Bit umgehen kann?
Danke vorab!
WinXP; Oo3.1.1
Zuletzt geändert von Blaukraut am Mi, 09.03.2011 19:30, insgesamt 1-mal geändert.
- Constructus
- *******
- Beiträge: 1610
- Registriert: Mo, 21.01.2008 18:08
- Wohnort: 20 Jahre Brilon - 40 Jahre Essen- Steele
Re: binär rechnen (AND / OR / XOR)
Hallo Blaukraut,
irgendwas stimmt in Deiner Rechnerei nicht...
Eine kurze Suche ergab:
binäre Rechenoperationen
http://magicstone.de/rhwiki/article/Bin%E4re_Operatoren
http://www.wer-weiss-was.de/theme50/article149831.html
http://de.wikipedia.org/wiki/Zweierkomplement
http://www.sccweb.de/themen/binary/
Siehst Du die Möglichkeit, daraus einen Weg zu ermitteln, wie Du weiterkommst? Ich meine, ich hätte das vor ...zig Jahren mal manuell gekonnt, das finde ich heute aber nicht wieder.
Nette Grüße
Constructus
irgendwas stimmt in Deiner Rechnerei nicht...
Eine kurze Suche ergab:
binäre Rechenoperationen
http://magicstone.de/rhwiki/article/Bin%E4re_Operatoren
http://www.wer-weiss-was.de/theme50/article149831.html
http://de.wikipedia.org/wiki/Zweierkomplement
http://www.sccweb.de/themen/binary/
Siehst Du die Möglichkeit, daraus einen Weg zu ermitteln, wie Du weiterkommst? Ich meine, ich hätte das vor ...zig Jahren mal manuell gekonnt, das finde ich heute aber nicht wieder.
Nette Grüße
Constructus
EDV ist wunderbar - o Wunder, wenn sie funktioniert! {°L*}
Freie Offices auf div. Linuxen + 3 VBoxen mit WIN2K
|| LibO + AOO, auf Linux und WIN2K; portable OO & Co. auf WIN
Genaue Typisierung unmöglich, alles ist "im Fluß"
Freie Offices auf div. Linuxen + 3 VBoxen mit WIN2K
|| LibO + AOO, auf Linux und WIN2K; portable OO & Co. auf WIN
Genaue Typisierung unmöglich, alles ist "im Fluß"
Re: binär rechnen (AND / OR / XOR)
Hallo,
danke für die Antwort.
Ich hatte vergessen dazuzuschreiben, dass ich Probleme habe, diese Operationen in CALC durchzuführen.
Rein mathematisch ist mir das sehr geläufig und in C oder Delphi kann man auch problemlos damit arbeiten, nur in CALC finde ich keine Operatoren, die das können.
Ich hatte laienhaft gedacht, dass CALC als kleines MatheGenie soetwas standartmäßig als Funktionen dabei hat und man keine Macros o.ä. dafür braucht.
Vielleicht ist es auch so, nur finde ich hier nichts...
danke für die Antwort.
Ich hatte vergessen dazuzuschreiben, dass ich Probleme habe, diese Operationen in CALC durchzuführen.
Rein mathematisch ist mir das sehr geläufig und in C oder Delphi kann man auch problemlos damit arbeiten, nur in CALC finde ich keine Operatoren, die das können.
Ich hatte laienhaft gedacht, dass CALC als kleines MatheGenie soetwas standartmäßig als Funktionen dabei hat und man keine Macros o.ä. dafür braucht.
Vielleicht ist es auch so, nur finde ich hier nichts...
Re: binär rechnen (AND / OR / XOR)
Hallo
Wenn dir das mathematisch so geläufig ist, frage ich mich wieso du in dem Zusammenhang über AND , OR und XOR faselst.
Die in Calc vorhandene DEZINBIN-funktion ist nunmal auf 9(10) Ausgabestellen beschränkt.
Ansonsten - (falls du nicht mit Basic, Python, Javascript oder Beanshell arbeiten willst) - In Calc kannst du mit GANZZAHL() und REST() und mit dem &-textverknüpfungoperator deine Umrechnungsmatrix zusammenbauen.
Gruß Karo
Wenn dir das mathematisch so geläufig ist, frage ich mich wieso du in dem Zusammenhang über AND , OR und XOR faselst.
Die in Calc vorhandene DEZINBIN-funktion ist nunmal auf 9(10) Ausgabestellen beschränkt.
Ansonsten - (falls du nicht mit Basic, Python, Javascript oder Beanshell arbeiten willst) - In Calc kannst du mit GANZZAHL() und REST() und mit dem &-textverknüpfungoperator deine Umrechnungsmatrix zusammenbauen.
Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
[gelöst] Re: binär rechnen (AND / OR / XOR)
sorry, wenn ich hier anscheinend total verpeilt Fragen stelle und wirres Zeug fasle. Das ist nicht meine Absicht.>>Wenn dir das mathematisch so geläufig ist, frage ich mich wieso du in dem Zusammenhang über AND , OR und XOR faselst.
Asche über mein Haupt, Asche über mein Haupt, Asche über mein Haupt (ich hoffe das reicht jetzt)
Das habe ich doch erkannt und eigentlich auch so geschrieben?Die in Calc vorhandene DEZINBIN-funktion ist nunmal auf 9(10) Ausgabestellen beschränkt.
Ja, danke, das ist natürlich möglich. Anscheinend gibt es keinen eleganteren Weg.In Calc kannst du mit GANZZAHL() und REST() und mit dem &-textverknüpfungoperator deine Umrechnungsmatrix zusammenbauen.
Und mit dieser Erkenntnis bin ich zufrieden!
Re: binär rechnen (AND / OR / XOR)
Hallo
Doch, es gibt elegantere Wege - aber du schriebst:
Leider brauchts etwas mehr, um aus Calc heraus diese Funktion zu nutzen siehe: viewtopic.php?f=2&t=43087&p=158588#p158588
Gruß Karo
Doch, es gibt elegantere Wege - aber du schriebst:
Damit schließt du die eleganteren Wege aus - z.B. mit python eine Zweizeiler:....und man keine Macros o.ä. dafür braucht.
Code: Alles auswählen
def dez2bin( i ):
return format( int( i ) , "b" )
Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Re: binär rechnen (AND / OR / XOR)
Hallo
Es gibt tatsächlich noch eine Calc-funktion zur binären Darstellung von ganzen Zahlen ohne die Beschränkung von DEZINBIN !
Gruß Karo
Es gibt tatsächlich noch eine Calc-funktion zur binären Darstellung von ganzen Zahlen ohne die Beschränkung von DEZINBIN !
Code: Alles auswählen
=BASIS( zahl ; 2 )
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Re: binär rechnen (AND / OR / XOR)
Verblüffend, das funktioniert perfekt.
Vielen Dank, damit muss ich nun endlich nicht mehr weiter faseln.
Gruß vom Blaukraut!
Vielen Dank, damit muss ich nun endlich nicht mehr weiter faseln.
Gruß vom Blaukraut!
- Constructus
- *******
- Beiträge: 1610
- Registriert: Mo, 21.01.2008 18:08
- Wohnort: 20 Jahre Brilon - 40 Jahre Essen- Steele
Re: [gelöst] binär rechnen (AND / OR / XOR)
Hallo Karo,
mal wieder was neues gelernt... Ich hab das grad in einer Datei ausprobiert, die mit Dezinbin nach 2 Stufen abbrach; jetzt geht mehr (ein Ende kann ich nicht ermitteln).
Kennst Du auch noch eine solche Möglichkeit für römische Zahlen? Da kommt irgendwann auch error502 mit Römisch(...;2) ..
Nette Grüße
Constructus
P.s.: ist das Leerzeichen nach der ersten Klammer Zufall oder Absicht?
mal wieder was neues gelernt... Ich hab das grad in einer Datei ausprobiert, die mit Dezinbin nach 2 Stufen abbrach; jetzt geht mehr (ein Ende kann ich nicht ermitteln).
Kennst Du auch noch eine solche Möglichkeit für römische Zahlen? Da kommt irgendwann auch error502 mit Römisch(...;2) ..
Nette Grüße
Constructus
P.s.: ist das Leerzeichen nach der ersten Klammer Zufall oder Absicht?
EDV ist wunderbar - o Wunder, wenn sie funktioniert! {°L*}
Freie Offices auf div. Linuxen + 3 VBoxen mit WIN2K
|| LibO + AOO, auf Linux und WIN2K; portable OO & Co. auf WIN
Genaue Typisierung unmöglich, alles ist "im Fluß"
Freie Offices auf div. Linuxen + 3 VBoxen mit WIN2K
|| LibO + AOO, auf Linux und WIN2K; portable OO & Co. auf WIN
Genaue Typisierung unmöglich, alles ist "im Fluß"
Re: nun Dezimalzahlen → römische Zahlen
Hallo Construktus
Nein für die römische Zahlendarstellung gibts nichts eingebautes für größere Zahlen, anscheinend gibts auch verschiedene Möglichkeiten der Darstellung für Zahlen > 3000. Siehe http://de.wikipedia.org/wiki/R%C3%B6mis ... 9Fe_Zahlen (Das betrifft sowohl die verwendeten Zeichen als auch die Darstellungsregeln )
Eine Lösung in Python ohne Anspruch auf Vollständigkeit:
Zur Anbindung an Calc siehe 2 Antworten weiter oben.
Gruß Karo
Nein für die römische Zahlendarstellung gibts nichts eingebautes für größere Zahlen, anscheinend gibts auch verschiedene Möglichkeiten der Darstellung für Zahlen > 3000. Siehe http://de.wikipedia.org/wiki/R%C3%B6mis ... 9Fe_Zahlen (Das betrifft sowohl die verwendeten Zeichen als auch die Darstellungsregeln )
Eine Lösung in Python ohne Anspruch auf Vollständigkeit:
Code: Alles auswählen
numsigns = [(u'\u2188', 100000),
(u'\u2182\u2188', 90000),
(u'\u2187',50000),
(u'\u2182\u2187', 40000),
(u'\u2182', 10000),
(u'M\u2182', 9000),
(u'\u2181', 5000),
(u'M\u2181', 4000),
("M", 1000),
("CM", 900),
("D", 500),
("CD", 400),
("C", 100),
("XC", 90),
("L", 50),
("XL", 40),
("X", 10),
("IX", 9),
("V", 5),
("IV", 4),
("I", 1)]
def dez2rom(n):
result = []
for sign, val in numsigns:
while n >= val:
n -= val
result.append(sign)
return "".join(result)
Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
- Constructus
- *******
- Beiträge: 1610
- Registriert: Mo, 21.01.2008 18:08
- Wohnort: 20 Jahre Brilon - 40 Jahre Essen- Steele
Re: [gelöst] binär rechnen (AND / OR / XOR)
Hallo Karo,
danke. Die Nachfrage war rein interesehalber, weil ich meiner Datei mit den Binärzahlen auch gleich eine Spalte mit den römischen Zahlen habe. Irgendwann ist die Darstellung der römischen Zahlen sowieso kaum mehr nachvollziehbar und auch unbekannt, wie das Nachlesen Deines Links zeigt. Wie weit die Römer selbst gezählt haben, habe ich nicht nachgesucht. Aber Million oder Milliarde dürften die kaum gekannt haben.
Bei mir geht es um so etwas:
Tage______9.131____10001110101011____Err:502
Wochen___1.304____10100011000_______MCCCIV
Monate____300_____100101100 _________CCC
Ich hoffe, das kommt einigermaßen verständlich 'rüber. Die unteren beiden Binärzahlen sind mit DezinBin erzeugt, die obere mit Deiner Formel.
Spielerei halt, aber es muß ja nicht alles bierernst sein...
Nette Grüße
Constructus
danke. Die Nachfrage war rein interesehalber, weil ich meiner Datei mit den Binärzahlen auch gleich eine Spalte mit den römischen Zahlen habe. Irgendwann ist die Darstellung der römischen Zahlen sowieso kaum mehr nachvollziehbar und auch unbekannt, wie das Nachlesen Deines Links zeigt. Wie weit die Römer selbst gezählt haben, habe ich nicht nachgesucht. Aber Million oder Milliarde dürften die kaum gekannt haben.
Bei mir geht es um so etwas:
Tage______9.131____10001110101011____Err:502
Wochen___1.304____10100011000_______MCCCIV
Monate____300_____100101100 _________CCC
Ich hoffe, das kommt einigermaßen verständlich 'rüber. Die unteren beiden Binärzahlen sind mit DezinBin erzeugt, die obere mit Deiner Formel.
Spielerei halt, aber es muß ja nicht alles bierernst sein...
Nette Grüße
Constructus
EDV ist wunderbar - o Wunder, wenn sie funktioniert! {°L*}
Freie Offices auf div. Linuxen + 3 VBoxen mit WIN2K
|| LibO + AOO, auf Linux und WIN2K; portable OO & Co. auf WIN
Genaue Typisierung unmöglich, alles ist "im Fluß"
Freie Offices auf div. Linuxen + 3 VBoxen mit WIN2K
|| LibO + AOO, auf Linux und WIN2K; portable OO & Co. auf WIN
Genaue Typisierung unmöglich, alles ist "im Fluß"