-         

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 28

Thema: Geschwindigkeit Division AVR/BASCOM

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.03.2004
    Beiträge
    137

    Geschwindigkeit Division AVR/BASCOM

    Anzeige

    Moin moin,

    mal ne Frage (vielleicht hats ja mal jemand gemessen). Wie lange braucht
    ein AVR mit 16 MHz um zB. eine byte-Variable durch 18 zu teilen? wieviele Takte nimmt das ungefähr in Anspruch? Wie sieht es mit Multiplikationen aus (die AVR'S haben ja einen Hardware-Multiplicator wird der von Bascom automatisch angesprochen?)... Addition und Substraktion bei 8 Bit Variablen sollten in einem Takt schaffbar sein oder?

    VIele Grüsse

    Jan

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Ort
    Dortmund
    Alter
    24
    Beiträge
    1.641
    Einen Takt? Kommt drauf an, womit du proggst. In Assembler legst du es einfach selbst fest, in C so ungefähr, und in Bascom weiß man nie, kann auch sein, dass die erst + 234 rechnen und das danach wieder richtig abziehen. nee Scherz, aber in Bascom kann ichs dir nicht sagen.
    o
    L_
    OL
    This is Schäuble. Copy Schäuble into your signature to help him on his way to Überwachungsstaat!

    http://de.youtube.com/watch?v=qV1cZ6jUeGE

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    25.03.2006
    Ort
    Darmstadt
    Alter
    26
    Beiträge
    522
    Hallo boeseTURBO-CT,

    ja, zwei 8bit-Variablen werden in einem Takt addiert/substrahiert. Beachte aber, dann man die Variablen erst aus dem SRAM laden muss, um sie addieren zu können. Wenn man es auf dem kürzesten Weg macht, würde es 7 Takte brauchen, bis zwei Variablen geladen, addiert und das Ergebnis wieder gespeichert ist. Ob Bascom diesen Weg auch geht kann ich Dir nicht sagen.

    MfG Mark

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.03.2004
    Beiträge
    137
    dass ist ja doof GCC kann das direkt ... Weiß jemand noch genaueres wie "hart" es bei division wird?

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    37
    Beiträge
    687
    Für sowas gibts nen Simulator der Dir genau sagt wie lang was dauert.

    Code:
    Dim A As Byte
    Dim B As Byte
    
    A = 245
    B = 18
    
    A = A / B
    
    End
    "A = A / B" dauert exakt 111 Takte!

    MfG

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.03.2004
    Beiträge
    137
    ah alles klar. Wusste nicht, dass der Simulator genau so "schnell" ist wie der uc später auch

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.07.2007
    Alter
    53
    Beiträge
    1.080
    allein das a=a/b dauert 111 takte, nicht das ganze programm?
    Mein Hexapod im Detail auf www.vreal.de

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.03.2004
    Beiträge
    137
    demnach brauch Bascom für eine addition 9 Takte! für eine multiplikation 10 Takte (zb. 6 x 25)

  9. #9
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Ort
    Dortmund
    Alter
    24
    Beiträge
    1.641
    Häh? Warum? Blick ich nich? HAst du das auch simuliert?
    o
    L_
    OL
    This is Schäuble. Copy Schäuble into your signature to help him on his way to Überwachungsstaat!

    http://de.youtube.com/watch?v=qV1cZ6jUeGE

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    37
    Beiträge
    687
    Zitat Zitat von MeckPommER
    allein das a=a/b dauert 111 takte, nicht das ganze programm?
    Ja, die eine Programmzeile dauert 111 Takte.

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

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