Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 2 von 5 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 49

Thema: Addierer

  1. #11
    Registriert seit
    30.06.2007
    Ort
    In der Pfalz
    Beiträge
    503
    Danke
    72
    Erhielt 77 Danke für 65 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von gravieren Beitrag anzeigen
    Hi Steve81


    Komisch, ich bin bald 20 Jahre Verheiratet und weis NICHT einmal was meine Frau "will"
    Ich seit einem! Du hast soeben meine Hoffnung zerstört.

  2. #12
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Zitat Zitat von _Praktikant_ Beitrag anzeigen
    Zur Einübung soll ich 2 (32bit) Dualzahlen addieren, aber ohne die vorhandene Add.funktion.
    Folgender Programmcode sollte auch ohne indirekte Adressierung funktionieren.

    Es ist dabei der Wertebereich für DINT-Zahlen von -2.147.483.648 bis 2.147.483.647 zu beachten.

    Code:
          L     MD   100                    // Zahl 1
          T     MD   120                    // Zahl 1
     
          L     MD   110                    // Zahl 2
          T     MD   130                    // Zahl 2
     
     
          L     32
    M01:  T     MW   200                    // Schleife
     
     
          L     MD   120                    // Zahl 1
          L     MD   130                    // Zahl 2
          XOD   
          T     MD   140                    // Zwischenwert
     
          L     MD   120                    // Zahl 1
          L     MD   130                    // Zahl 2
          UD    
          T     MD   150                    // Überlauf
     
          L     MD   150                    // Überlauf
          SLD   1
          T     MD   150                    // Überlauf
     
     
          L     MD   140                    // Zwischenwert
          T     MD   120                    // Zahl 1
     
          L     MD   150                    // Überlauf
          T     MD   130                    // Zahl 2
     
     
          L     MW   200                    // Schleife
          LOOP  M01
     
     
          L     MD   140                    // Zwischenwert
          L     MD   150                    // Überlauf
          OD    
          T     MD   160                    // Ergebnis
    Gruß Kai
    Angehängte Grafiken Angehängte Grafiken
    Angehängte Dateien Angehängte Dateien
    Geändert von Kai (15.08.2007 um 11:22 Uhr)

  3. #13
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.224
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Zitat Zitat von Kai Beitrag anzeigen
    Folgender Programmcode sollte auch ohne indirekte Adressierung funktionieren.


    Stöhn, wie wärs denn mit einem Ansatz, statt der kompletten Lösung!
    Geändert von Ralle (15.08.2007 um 11:49 Uhr)
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  4. #14
    Avatar von _Praktikant_
    _Praktikant_ ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    14.08.2007
    Ort
    FH
    Beiträge
    8
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,
    danke erst mal für die schnellen Antworten
    Also die Aufgabe soll binäre Addition sein, mit Schleife und
    ind. Adr.
    Werd gleich morgen mit den Tipps von Ralle versuchen in der
    aufgabe weiter zu kommen!
    Meld mich wieder...
    Mfg

  5. #15
    Registriert seit
    06.10.2003
    Beiträge
    3.414
    Danke
    451
    Erhielt 506 Danke für 408 Beiträge

    Standard

    Also, die Aufgabe ist wirklich gut .

    Indirekte Adressierung, Schleife und Stolperklippen bei der Ermittlung des Übertrags! Eine wirklich besch.. äh gelungene Kombination für eine Übungsaufgabe. Viel Spaß!

    Kleiner Tipp:
    • Befehl TAD ansehen!
    • ein Übertrag erfolgt, wenn
    • 1. beide bits in den Zahlen "1" sind, ODER
    • 2. ein bit "1" ist UND ein Übertrag ansteht

    Gruß, Onkel
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford
    Zitieren Zitieren Tad  

  6. #16
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.224
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Zitat Zitat von Onkel Dagobert Beitrag anzeigen
    Also, die Aufgabe ist wirklich gut .

    Indirekte Adressierung, Schleife und Stolperklippen bei der Ermittlung des Übertrags! Eine wirklich besch.. äh gelungene Kombination für eine Übungsaufgabe. Viel Spaß!

    Kleiner Tipp:
    • Befehl TAD ansehen!
    • ein Übertrag erfolgt, wenn
    • 1. beide bits in den Zahlen "1" sind, ODER
    • 2. ein bit "1" ist UND ein Übertrag ansteht
    Gruß, Onkel
    Die Tips sind gut .
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  7. #17
    Registriert seit
    06.10.2003
    Beiträge
    3.414
    Danke
    451
    Erhielt 506 Danke für 408 Beiträge

    Standard

    Zitat Zitat von Ralle Beitrag anzeigen
    Die Tips sind gut .
    Na setze noch einen zur ind. Adressierung drauf. Ist nur ein Vorschlag, natürlich geht es auch anders. Ich würde es in einer FC mit AR1 und AR2 adressieren.

    Code:
    ...
    ...
          L     32
    L001: T     #TEMP_INT
    //*** Binärergebnis unter Berücksichtigung des Übertrag
          X      [AR1,P#0.0]
          X      [AR2,P#0.0]
          X     #UEBERTRAG
          =     #EINS                       // Ergebnisbit
     
    //*** Übertrag
    ...
    ...
    ...
          =     #UEBERTRAG
     
          U     #EINS
          =      [AR2,P#0.0]                // am Ende Summand in AR2
     
    ...
    ...
          +AR1  P#0.1
          +AR2  P#0.1
          L     #TEMP_INT
          LOOP  L001

    Gruß, Onkel
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

  8. #18
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.224
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    @Onkel

    nö, brauchste nicht, AR1 reicht vollkommen.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  9. #19
    Registriert seit
    06.10.2003
    Beiträge
    3.414
    Danke
    451
    Erhielt 506 Danke für 408 Beiträge

    Standard

    Zitat Zitat von Ralle Beitrag anzeigen
    @Onkel

    nö, brauchste nicht, AR1 reicht vollkommen.
    Ja ok, ursprünglich wollte ich auf die Bausteinparameter adressieren. Dann ist es mit zwei unabhängigen Zeigern sinnvoll, da die Parameter in unterschiedlichen Datenbereichen liegen könnten.


    Gruß, Onkel
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

  10. #20
    Avatar von _Praktikant_
    _Praktikant_ ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    14.08.2007
    Ort
    FH
    Beiträge
    8
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    also weil ich grad komplett verwirrt bin und nicht vorwärts komm..
    sorry wenn ich blöde fragen stelle ( bin halt totaler anfänger und tue
    mir schwer mit der umsetzung in prog.code).
    Die links hab ich mir angeschaut und die theorie ist soweit klar:
    für den übertrag müsste es 4 möglichkeiten für einen übertrag und
    4 für keinen (je abhängig von den summanden) geben.
    Fragen:
    Summand_1, Summand_2 und das Ergebnis legst du im Tempbereich des Bausteins hintereinander als DINT an.
    Mir wurde am anfang dword gesagt -> beides möglich??
    Am Anfang, vor der Schleife werden Summand_1, Summand_2 in diese Temp-Var hineinkopiert.
    Ist hier kopieren von werten aus DB in temp-var gemeint?
    [html]L 32;
    L #Schleifenzaehler;
    -I ;
    +AR1 ; [/html]
    -I => #schleifenzähler - 32 ( Akku1 -Akku2) und szähler ist doch < 32 => neg Wert

    Was fehlt denn noch alles bei der schleife von onkel dagobert?
    XOR-verknüpfung von s1,s1 und altem übertrag und...?

    Wie gesagt sorry, aber fang ganz von vorne an, mfg!
    Geändert von _Praktikant_ (22.08.2007 um 08:24 Uhr)

Ähnliche Themen

  1. Addierer
    Von Xorron im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 17.02.2009, 07:33

Lesezeichen

Berechtigungen

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