Supportforum von www.raeppel.de

Forum für SPS-Tools & Automatisierungstechnik
Aktuelle Zeit: 28.03.2024, 11:13

Alle Zeiten sind UTC + 1 Stunde


Forumsregeln


Die Forumsregeln lesen



Ein neues Thema erstellen Auf das Thema antworten  [ 13 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: mehr als 1 Bit high?
BeitragVerfasst: 11.09.2008, 07:35 
Hi Leute,

gibt es eine einfache Funktion (ohne Bits zählen) die eine 1 rausgibt wenn in einem Byte/WORT/Doppelwort mehr als 1 Bit high ist?

Manuel


Nach oben
  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 11.09.2008, 08:59 
Offline

Registriert: 29.08.2008, 07:28
Beiträge: 21
In der Standard Bibliothek gibt es unter TI-S7 Converting Blocks den FC99 BITSUM.
Dieser zählt die Anzahl der Bits die gesetzt sind.
Wenn Du den Rückgabewert auf >1 vergleichtst, müsste das doch Funktionieren

Gruss
FvE


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 11.09.2008, 09:17 
Hallo FvE,

Zitat:
ohne Bits zählen


Ich dachte ich hätte mal irgendwo 2-3 Programmzeilen gesehen die die Auswertung erledigt haben. Ich will das aus Zykluszeitgründen ohne zuviele Schleifen/Bausteinaufrufen haben weil ich die Auswertung schon in einer Schleife über einige Worte machen will.

Manuel


Nach oben
  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 13.09.2008, 18:37 
Offline

Registriert: 25.01.2008, 18:34
Beiträge: 34
Wohnort: Dillenburg
Warum nicht so

L BYTE/WORD/DWORD
L 0
>I / D
= 1

damit sollte das ganze doch erldigt sein oder?

Ich denke da hat mal jemand den Wald vor lauter Bäumen nicht gesehen :-)

MFG

Chris

_________________
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 14.09.2008, 09:10 
smart_chris hat geschrieben:
Warum nicht so

L BYTE/WORD/DWORD
L 0
>I / D
= 1

damit sollte das ganze doch erldigt sein oder?

Ich denke da hat mal jemand den Wald vor lauter Bäumen nicht gesehen :-)

MFG

Chris


Ich denke das Du die Frage nicht richtig gelesen hast.


Nach oben
  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 14.09.2008, 10:59 
Offline

Registriert: 25.01.2008, 18:34
Beiträge: 34
Wohnort: Dillenburg
Warum Frage nicht gelesen? Wenn er eine 1 Haben will kann er das ja so machen. Entweder er nimmt es als Bit und verarbeitet es weiter oder er kann das erste Bit in seinem Auswertebereich setzten und hat somit ebenfalls eine 1.

Richtig wäre natürlich auf ungleich 0 abzufragen.

Chris

_________________
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 14.09.2008, 11:08 
Offline
Site Admin

Registriert: 24.01.2008, 21:55
Beiträge: 175
Hallo Chris,

Zitat:
die eine 1 rausgibt wenn in einem Byte/WORT/Doppelwort mehr als 1 Bit high ist


0100 0000 -> 0
0101 0000 -> 1
0000 1101 -> 1

nicht zu verwechseln mit mindestens 1 Bit high!

André

_________________
www.raeppel.de
mit innovativen SPS-Tools schneller ans Ziel


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 14.09.2008, 11:58 
Offline

Registriert: 25.01.2008, 18:34
Beiträge: 34
Wohnort: Dillenburg
Stimmt da hab ich was falsch verstanden.

_________________
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 14.09.2008, 16:59 
Das folgende Vorgehen ist nicht wirklich ernst gemeint. Ich vermute das er deutlich mehr Zeit braucht als das einfache Zählen der Bits.

Man könnte den Zweierlogarithmus der Zahl (im Byte/Word/DWord) errechnen [FC122 B_LOG_X].

Und von dem Ergebnis (also dem Exponent) die Wurzel ziehen.

Ist das Ergebnis der Wurzelberechnung eine Ganzzahl so ist maximal ein Bit high.

Ansonsten fällt mir dazu nur ein: Nutz einfach den Bitsum FC.

Gruß vom
Freidenker


Nach oben
  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 14.09.2008, 17:23 
Sorry, ich bin es nochmal. Meine Antwort war leider falsch.

Wenn der Zweierlogarithmus eine Ganzzahl ausspuckt ist maximal 1 Bit high.

Das mit der Wurzel war ein geistiger Ausrutscher. :oops:


Nach oben
  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 17.09.2008, 10:40 
Offline

Registriert: 29.08.2008, 07:28
Beiträge: 21
smart_chris hat geschrieben:
Stimmt da hab ich was falsch verstanden.


Einsicht ist der erste Weg zur Besserung :mrgreen:

Gruss
FvE


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 28.09.2008, 15:11 
Hallo,

sehe ich das richtig dass es keinen einfachen Weg gibt?

Manuel


Nach oben
  
 
 Betreff des Beitrags: Re: mehr als 1 Bit high?
BeitragVerfasst: 28.09.2008, 19:19 
Manuel hat geschrieben:
Hallo,

sehe ich das richtig dass es keinen einfachen Weg gibt?

Manuel


Ich lass mich ja gerne eines besseren belehren... aber ich denke das man am Zählen nicht vorbei kommt (bzw. es wird nicht einfacher).


Nach oben
  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 13 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de