-         

Ergebnis 1 bis 7 von 7

Thema: Array auf 0 setzen?

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.07.2006
    Alter
    87
    Beiträge
    627

    Array auf 0 setzen?

    Anzeige

    Hallo,
    welche Möglichkeit gibt es ein Array auf 0 zu setzen?

    Bisher viel mir nur ein es von Hand auf 0 zu setzen:

    Dim x(3) As Byte
    x(1) = 0
    x(2) = 0
    x(3) = 0


    oder in einer For...Next Schleife.

    Gibt es vielleicht noch etwas einfacheres?
    Schön wäre ja "x(1) ; 3 = 0" oder so....

    Tobias
    ...

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    24
    Beiträge
    1.544
    Hallo,

    du könntest versuchen, eine Overlay-Variable über das Array zu legen und diese dann auf 0 zu setzen, so etwa:
    Code:
    dim ar(4) as byte
    dim _overlay as byte at ar(1) overlay
    
    _overlay = 0
    Ist allerdings nicht von mir getestet, war nur gerade so ein spontaner Einfall

    Gruß
    Chris

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.07.2006
    Alter
    87
    Beiträge
    627
    werd ich versuchen - war aber nur eine grundsätzliche Frage ob es da vielleicht etwas gibt.

    Tobias
    ...

  4. #4
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Wirklich verändern kann man nur das bzw die Bascom Statements, denn ein 8-Bit Rechner kann eben nur ein Byte auf einmal verändern, d.h. eine Art FOR-Schleife wird es letztlich auf jeden Fall.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    05.03.2011
    Ort
    Graz
    Beiträge
    29
    Hallo,

    Das mit dem Overlay wird so nicht funktionieren, dabei wird nur das erste Byte im Array gesetzt.
    Schau dir mal den Memcopy-Befehl an, der kopiert einen Speicherbereich in den anderen, wobei du bestimmen kannst, welche Adressen inkrementiert werden. Zum Nullen eines Arrays bietet sich Option 2 an.
    Ein bisschen schneller gehts noch wenn man sich diese Funktion selbst in Assembler schreibt und dabei auf die Parameterübergabe verzichtet...

    mfg

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    24
    Beiträge
    1.544
    Oh sorry, die overlay Variable muss natürlich ein größerer Typ sein! Wenn das Array 4 Byte groß ist, dann muss die Overlay Variable mindestens ein 4Byte Datentyp sein (z.b. Long).

    Gruß
    Chris

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.07.2006
    Alter
    87
    Beiträge
    627
    Vielen Dank für die vielen Antworten.
    Dann bleibe ich also bei der FOR-Schleife.

    Tobias
    ...

Ähnliche Themen

  1. Bit im SRAM setzen
    Von 1udo1 im Forum Assembler-Programmierung
    Antworten: 4
    Letzter Beitrag: 22.10.2007, 21:42
  2. Array auf zweidimensionale Array
    Von semicolon im Forum C - Programmierung (GCC u.a.)
    Antworten: 1
    Letzter Beitrag: 25.05.2007, 13:48
  3. Nur Nummern in Array / nur Variablentyp byte als Array?
    Von Crashmichl im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 28.04.2006, 00:15
  4. cts an dem comport setzen
    Von super_castle im Forum AVR Hardwarethemen
    Antworten: 1
    Letzter Beitrag: 07.12.2005, 20:10
  5. Register setzen in Avr-C -2
    Von luma im Forum C - Programmierung (GCC u.a.)
    Antworten: 11
    Letzter Beitrag: 15.08.2005, 19:05

Berechtigungen

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