Autor Thema: Modul-Code zur Anpassung  (Gelesen 6606 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline gravieren

  • Entwickler
  • *****
  • Beiträge: 578
    • Profil anzeigen
Modul-Code zur Anpassung
« am: 28. Februar 2007, 18:18:56 »
Hi Hugo

Ich teste momentan die OSCAT-S7  Version.

Mir fallen einige Code-Stellen auf, die nachgebessert werden könnten.


Zitat
Orginal:  C_to_F := celsius * 1.8 + 32

Vorschlag:  C_to_F := (celsius * 1.8 ) + 32.0
32 -->  (INT-Wert)
Punkt vor Strich kann der Compiler, jedoch wird die lesbarkeit erhöht.




*******************************************************************************************************
check_parity

 
FUNCTION check_parity : BOOL
TITLE = 'check_parity'
//
// this function checks for an even partity for a dword and partity bit.
//
// Uses: even
//
VERSION : '1.0'
AUTHOR  : hugo
NAME    : CHECKP
FAMILY  : GATE
 
VAR_INPUT
    in : DWORD;           *********************** FEHLER ?    Sollte BYTE sein  (Laut Handbuch)
    p : BOOL;               *********************** FEHLER ?    Sollte  BOOL sein (Laut Handbuch)
END_VAR

 
Zudem fehlt im Handbuch die Erklärung/Beschreibung für den Paramter "p"




Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re: Modul-Code zur Anpassung
« Antwort #1 am: 28. Februar 2007, 23:03:56 »
danke für die inputs

zu punkt 1 32.0 ja vielleicht besser lesbar, aber durch typecast errechnet der compiler automatisch den richtigen wert.
32.0 wird als real gespeichert und 32 als in spart also 2 byte speicherplatz und ist effizienter

dword für input.
das ist volle absicht, dword kann durch typecast des compilers mit allen kleineren bit typen geladen werden, damit kann wenn in einem dword das unterste byte bearbeitet werden soll dieses direkt auf den eingang gelegt werden.
die funktion nist also flexibler.
wir wollen dies in der lib verstärkt nutzen um universeller zu sein.

p (parity sollte natuerlich beschrieben sein und wird unmittelbar berichtigt.

vielen dank

Offline gravieren

  • Entwickler
  • *****
  • Beiträge: 578
    • Profil anzeigen
Re: Modul-Code zur Anpassung
« Antwort #2 am: 01. März 2007, 16:41:15 »
Hi

Zitat
dword für input.
das ist volle absicht, dword kann durch typecast des compilers mit allen kleineren bit typen geladen werden
Jo, klingt logisch, sollte aber auch dokumentiert sein  ;)


Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re: Modul-Code zur Anpassung
« Antwort #3 am: 04. März 2007, 04:06:24 »
doku wird verbessert.
danke, hugo