- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 10 von 20

Thema: Mit AVR durch 0 teilen ?!

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    73
    Beiträge
    11.077
    Hallo!

    Das Video finde ich optimal für alle, die Innereien von einem µC noch nicht gesehen haben. Anschauen ist angeblich billiger, als Sebstversuche mit unbekanten Endresultat.
    Geändert von PICture (19.10.2011 um 15:15 Uhr)
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von Thomas E.
    Registriert seit
    29.12.2011
    Beiträge
    638
    Um das "Compiler-Meckern" zu umgehen:
    Einfach in einer Schleife den Teiler überlaufen lassen, dann müsste es zu einer Divison durch null kommen ohne das der Compiler bereits beim Compilieren etwas davon mitbekommt.

    In etwa so:
    Code:
    Dim A as Integer
    Dim B as Byte
    
    For B = 1 to 255
         Incr B
         A=A/B
         Print A
    Next
    Nachdem der Compiler bei For B = 1 to 256 bemerken würde, dass sich 256 niemals in einer Byte-Variablen ausgehen können, inkrementiere ich kurzerhand direkt in der Schleife nochmals um eins. Damit würde beim letzten Schleifeneintritt B = 255 sein, nach Incr B schließlich null.

    Ich habe es noch nicht ausprobiert, aber was denkt ihr darüber?
    Grüße
    Thomas

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.07.2004
    Ort
    Südhessen
    Beiträge
    1.312
    Gute Idee! Bitte ausprobieren.
    Es wird folgendes passieren:
    1) Es werden die Zahlen in Zweierschritten ausgegeben: 2, 4, 6, 8, ... etc. bis 254, und dann ...
    2) Wieder von vorn. (weil eine Exception, ausgelöst durch die CPU, den µC neu starten wird.)

  4. #4
    Erfahrener Benutzer Roboter Experte Avatar von Thomas E.
    Registriert seit
    29.12.2011
    Beiträge
    638
    Ich habe es jetzt ausprobiert:
    Bei der Divison durch null wird 255 als Ergebnis ausgegeben und der Controller läuft weiter, als ob nichts geschehen wäre. Irgendwie enttäuschend. :/
    Grüße
    Thomas

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.07.2004
    Ort
    Südhessen
    Beiträge
    1.312
    Ja, in der Tat.

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.05.2009
    Ort
    Sinsheim b. Heidelberg
    Alter
    31
    Beiträge
    519
    Schade, ich hatte etwas anderes erhofft

    mfg

  7. #7
    Erfahrener Benutzer Roboter Experte Avatar von Thomas E.
    Registriert seit
    29.12.2011
    Beiträge
    638
    By the way:
    Für Gleitkommazahlen ist ein Ergebnis beim Teilen durch null definiert:
    Für Gleitkommazahlen (float und andere Datentypen) ist aber durch den Gleitkommastandard IEEE 754 unter anderem eine Division durch 0 definiert. Dieser Standard definiert zwei Gleitkommazahlen namens +Inf und −Inf (infinity = unendlich) und unterscheidet zwei Zahlen mit dem Wert 0: +0 und −0. Beide repräsentieren die Zahl 0, beim Testen auf Gleichheit werden diese beiden Zahlen als gleich betrachtet. Für das Rechnen mit +0, −0, +Inf und −Inf legt der Standard naheliegende und natürliche Regeln fest, wann immer es möglich ist.
    Quelle: http://de.wikipedia.org/wiki/Null#Di..._auf_Computern
    Grüße
    Thomas

Ähnliche Themen

  1. Einstiegsfrage zu den Teilen
    Von joeb im Forum Controller- und Roboterboards von Conrad.de
    Antworten: 4
    Letzter Beitrag: 09.06.2009, 22:58
  2. Eingang an Ausgang übergeben und durch 2 teilen
    Von Flasher im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 26.03.2007, 14:20
  3. Gehaüse mit teilen...
    Von dundee12 im Forum Konstruktion/CAD/3D-Druck/Sketchup und Platinenlayout Eagle & Fritzing u.a.
    Antworten: 3
    Letzter Beitrag: 24.08.2005, 21:59
  4. Spannung durch 10 teilen
    Von freaky360 im Forum Elektronik
    Antworten: 6
    Letzter Beitrag: 27.03.2005, 13:19
  5. ADC-Port Teilen
    Von Roberto im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 11.03.2005, 22:54

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress