mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bascom - Variablen handling


Autor: Stephan B. (s_bronco)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich muß aus einer 3 Stelligen Numerischen Variablen nacheinander die 
Zahlen haben, also 1er, 10er und 100er - Stellen getrennt voneinander.
Im Moment mach ich das über Num.Variable in String wandeln dann Stelle n 
extrahieren und wieder in eine Num.Variable zurück wandeln.

Geht das auch anders? einfacher, vor allem aber schneller?

Autor: einstein (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
zählen der Einer-, Zehner- und Hunderter-Stellen???

z.B. ZAHL=365

subtrahiere solange 100 von ZAHL, bis ZAHL kleiner 100 - gibt 3
subtrahiere solange 10 von REST, bis REST kleiner 10 - gibt 6
bei der Einer-Stelle brauchst du nix machen - 5 :-)

so schwer?

Autor: Stephan B. (s_bronco)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das es so auch geht war mir schon klar, sollte aber noch schneller sein 
da der uC wirklich beschäftigt ist, hatte gehofft das Bascom das direkt 
kann.

Das ganze ist ein workaround um auf einem LCD mit T6963 große Zeichen 
(16x16 Pixel) verwenden zu können: zB. Var = 295 = 1: 2.bgf, 2: 9.bgf , 
3: 5.bgf.

werd jetzt mal schaun ob das wirklich schneller ist als die str() 
Methode

Danke für die schnelle Antwort

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist das Dezimalsystem wirklich sooooo schwer?
EINER = ZAHL MOD 10
ZAHL = ZAHL \ 10
ZEHNER = ZAHL MOD 10
ZAHL = ZAHL \ 10
HUNDERTER = ZAHL

oder
HUNDERTER = ZAHL \ 100
ZEHNER = (ZAHL MOD 100) \ 10
EINER = ZAHL MOD 10

oder ...

Autor: Stephan B. (s_bronco)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab nur Realschule und Elektronikerlehre nicht Mathestudium, ausserdem 
kann Bascom das glaub nicht

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann schau selbst ins Bascom-Manual. Laut Seite 252 ist der '\' der 
Integerdivisionsoperator und 'MOD' der Integermodulooperator (man was 
für Wörter :).
Und um durch 10 dividieren zu können und zu wissen wie man bei einer 
ganzzahligen Division mit einem Rest umgeht, bist Du mit Deiner 
Realschule eigentlich schon überqualifiziert. Das lernt man 
normalerweise irgendwo zwischen 2. und 4. Klasse noch vor den 
gebrochenen Zahlen.

Autor: Jawoll (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jawoll Herr Oberlehrer....!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.