- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 9 von 9

Thema: Sowas wie SPRUNGMARKEN in C

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Alle Jahre wieder:

    https://www.roboternetz.de/community...der-doch-nicht

    Wirklich nett sind selbstmodifizierende Programme.

    Schnell, kompakt und eine echte Herausforderung beim Debuggen :)
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    15.02.2004
    Beiträge
    10
    Die Frage ist nicht ob goto oder nicht, sondern die Denkweise die bei einem Assemblerprogrammierer im Sinne von Nassi-Shneidermann nicht strukturiert ist.
    Empfehlung: Formuliere dein Problem zunächst als NS-Diagramm (nicht Flußdiagramm) dann kannst du es anschliessend sowohl in ASM als auch in C codieren.
    In ASM macht man das dann nicht immer so wie in C, weil man z. Bsp. irgendwo hinspringen kann wo es ein gemeinsames Ende gibt während man in C dieses
    Ende als Funktion ausgegliedert mehrfach aufrufen müsste. Als ASM Programmierer leuchtet einem dieser scheinbar unnötige Aufwand nicht gerade ein, aber
    wenn man genau guckt, optimiert ein guter C-Compiler das letztendlich auch wieder weg und macht bedingte Sprünge draus. Wenn der Optimierer was taugt,
    so öhnlich (oder unübersichtlicher und schneller) wie man das selbst auch gemacht hätte. Manche Optimierer ersetzen sogar einen RETURN durch JUMP was
    man als ASM Programmierer wegen der Übersichtlichkeit nicht unbedingt gemacht hätte.

    Bei SPS Anweisungslisten (wurde früher bei Siemns S5 wie Assembler von diskrekt aufgebauten Prozessoren direkt ausgefürt) gibt es übrigens zahlreiche bedingt ausgeführte Befehle.
    Im uC Assembler ist bedingte Ausführung meist nur für Sprünge bekannt, Siemens S5 machte das aber für Bitbefehle wie etwa Bit-setzen oder Bit-rücksetzen. Diese werden nur dann ausgeführt, wenn ein Flag
    des Vorgängerbefehls dies erlaubt. Im uC Assmbler würde man da einen bedingten Sprung machen, der mit einer Sprungmarke hinter den Bitbefehl springt. Eben nur weil es keinen bedingt ausführbaren Bitbefehl gibt. Goto ist also keineswegs eine Frage des schlechten Stils sondern einfach nur der Denkweise. C-Neulinge können sich auch mal Anschauen, was der Compiler bei Break Anweisungen (=goto) macht. Das ist schließlich ein Befehl welcher sogar als "struktruiert" anerkannt ist.

Ähnliche Themen

  1. Könnt ihr sowas bauen ?
    Von NoPlan im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 7
    Letzter Beitrag: 02.02.2012, 05:55
  2. Wie baut man sowas? Erfahrungen?
    Von PuraVida im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 14
    Letzter Beitrag: 24.01.2012, 19:26
  3. Wie schafft man sowas?
    Von Kampi im Forum Offtopic und Community Tratsch
    Antworten: 4
    Letzter Beitrag: 04.01.2012, 16:44
  4. ich brauche sowas wie ein bit array
    Von wischos im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 5
    Letzter Beitrag: 25.09.2007, 17:09
  5. RxD Interrupt? Gibt es sowas?
    Von strunz im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 20.04.2006, 11:03

Berechtigungen

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

LiFePO4 Speicher Test