- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 10 von 15

Thema: Microchip Frust

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #12
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    05.11.2007
    Beiträge
    1.076
    Hallo Peter,
    PL/M*80 kenne ich von Damals. Das war ähnlich dem Pascal,
    meine ersten Programmiererfahrungen auf einen Tektronix System mit 8 Zoll Disketten. 8085 Emulator
    Compiliert wurde in der Mittagspasue, weil das dauerte halt.......
    C hab ich erst 25 Jahre später kennen gelernt.

    Achja Klebwax, Du hast natürlich recht bei der Zuweisung a = 3;
    Die 3 ist in "C" ein Integer, was dann schon problematisch werden könnte bei dem 8 Bitter.
    Hab das mal geändert und folgender Code hat sich ergeben:
    volatile ist erforderlich, damit mir der Compiler den offensichtich unnötigen Code nicht wegoptimiert....
    hier nochmal ein Ausschnitt vom erzeugten Code.

    volatile char a,b,c;

    a = (char)(3);
    0x89: MOVLW 0x3
    0x8A: MOVLB 0x0
    0x8B: MOVWF __pcstackBANK0
    0x8C: MOVF __pcstackBANK0, W
    0x8D: MOVWF a
    b = '3';
    0x8E: MOVLW 0x33
    0x8F: MOVWF __pcstackBANK0
    0x90: MOVF __pcstackBANK0, W
    0x91: MOVWF b
    c = a+b;
    0x92: MOVF a, W
    0x93: ADDWF b, W
    0x94: MOVWF __pcstackBANK0
    0x95: MOVF __pcstackBANK0, W
    0x96: MOVWF c


    Das sind schon erstaunliche Umwege,
    er packt immer die Werte irgendwo hin
    und holt sie wieder zurück.
    Keine Ahnung wofür das gut sein sein.
    ---------------
    so würd ich das machen, bin aber auch kein Compiler
    movlb 0
    movlw 3
    movwf a
    movlw '3'
    movwf b
    addwf a,W
    movwf c
    -------------------

    - - - Aktualisiert - - -

    hab das mal mit einem Array ausprobiert:

    volatile char a[3];

    a[0]=(char)(3);

    0x8C: MOVLW 0x3
    0x8D: MOVLB 0x0
    0x8E: MOVWF __pcstackBANK0
    0x8F: MOVF __pcstackBANK0, W
    0x90: MOVWF a
    a[1]=5;
    0x91: MOVLW 0x5
    0x92: MOVWF __pcstackBANK0
    0x93: MOVF __pcstackBANK0, W
    0x94: MOVWF 0x21
    a[2]=a[1]+a[2];
    0x95: MOVF 0x21, W
    0x96: ADDWF 0x22, W
    0x97: MOVWF __pcstackBANK0
    0x98: MOVF __pcstackBANK0, W
    0x99: MOVWF 0x22
    Geändert von Siro (25.02.2016 um 19:39 Uhr)

Ähnliche Themen

  1. IC zur Leistungsmessung von Microchip
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 06.02.2014, 11:20
  2. Suche ein PIC Microchip Compielier
    Von Matze 3 im Forum Open Source Software Projekte
    Antworten: 4
    Letzter Beitrag: 03.11.2008, 20:06
  3. [ERLEDIGT] Pickit von Microchip
    Von im Forum PIC Controller
    Antworten: 17
    Letzter Beitrag: 25.08.2005, 15:28
  4. PICkit1 von Microchip
    Von sbreu23s im Forum PIC Controller
    Antworten: 7
    Letzter Beitrag: 20.04.2005, 01:35
  5. HCF 4020BE was ist das für Microchip?
    Von MischaMV im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 26.03.2005, 17:07

Berechtigungen

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

Labornetzteil AliExpress