Hirdetés
- Kitolhatja az LGA1700 élettartamát az Intel
- 240 Hz-es QD-OLED monitor jött az Alienware-től az árérzékenyebbek számára
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Házimozi haladó szinten
- Milyen billentyűzetet vegyek?
- Sony MILC fényképezőgépcsalád
- Akciókamerák
- Xiaomi Pad 8 Pro – a hardver felnőtt a névhez
- Fejhallgató erősítő és DAC topik
- TCL LCD és LED TV-k
Új hozzászólás Aktív témák
-
Szirty
őstag
Üdv!
"> FB1 NW11-en a #PLC_Msg_Count_Tmp -be mindig belekerül a 35 (Ha elötte az
> olvasás át van ugorva akkor is)
> FB1 NW13-on a #PLC_Msg_RCount_Tmp -be mindig belekerül a 416(Ha elötte az
> olvasás át van ugorva akkor is)"Az ökölszabályt be kell tartani! Mindig! Nincs kivétel!
1. Avagy a TEMP változók tartalmát nem szabad felhasználni az értékadás előtt a blokk lefutása során!
2. A TEMP változók tartalma minden alkalommal elveszettnek tekintendő, amikor a blokk lefutott!Ok.: Minden blokk ugyanazt a memóriaterületet használja a TEMP változók tárolására (Stack).
Volt már róla szó.Ha egy TEMP változót olvasol értékadás előtt, akkor az azelőtt lefutott blokk memória szemetét találod benne! Ha nem fut másik blokk vagy az nem használja azt az L címet, akkor ugyanaz van benne amit a blokk beleírt, de ez igen csalóka és rettentő nagy szívás oka lehet!
Hiába adtál te valamikor értéket az FB1-ben #PLC_Msg_Count_Tmp-nek, ahogy a blokk lefutott, huss, az értéknek annyi lesz, elvész. Amikor az FB2 megint fut, már szemét van benne!
Az #PLC_Msg_Count_Tmp az FB1-ben történetesen a 4-es lokális címen van:
Az FB2-ben a 4-es címet az S_ANY pointer 4. byte-ja foglalja el, ami a DB száma:
L #PC_DBNum // Source DB
T LW 4#PC_DBNum meg az FB2 inputja, aminek éppen 35-ös értéket adsz híváskor:

Az LW4 tartalma marad az LW4-ben amikor az FB2 lefut, legközelebb fut az FB1, ahol az LW4-re épp a #PLC_Msg_Count_Tmp változó kerül. Ezért amíg az FB1 nem írja (nem ad neki értéket) a 35 ott ül benne!
Soha, de SOHA nem szabad TEMP változó értékét felhasználni azelőtt, hogy értéket adtunk neki amikor a blokk lefut. Az előző futáskori értékadás itt nem számít. Ahogy a blokk kilép, le van futva, TEMP változó el van veszve!
Emiatt arra is nagyon kell figyelni, hogy ha egy TMP változó értékadása feltételtől függ (pl. elágazás van előtte) de az tartalmának a feldolgozása feltételtől független vagy más feltételtől függ, akkor az elágazás(ok) teljesülésétől fog függni a szívás, vagyis az hogy épp szemét van benne vagy hasznos érték!
Erre NAGYON oda kell figyelni!
Új hozzászólás Aktív témák
- Macbook Air 13" M2 - 2025 gyártás, 8 CPU, 10 GPU, 24GB / 512GB, 100% akku - garancia (109)
- Macbook Air 13" M2 2022 - 16GB RAM - ÚJ, aktiválatlan, Apple garancia (117)
- Intel I7 8700K / 16gb ddr4 / Rtx 2060
- HP ProBook 450 G5 I5-8250U 8 GB 256 GB NVMe 15,6" FullHD IPS laptop
- MSI Pulse 15 B13VFK i7 / RTX 4060 140W / QHD 165Hz 16GB DDR5 1 TB SSD
- Creality HALOT ONE gyantás nyomtató
- Steelseries Arctis Gamebuds (Playstation) Gamer vezeték nélküli fülhallgató
- Owl Labs Owl Bar 4K Videokonferencia Rendszer FRS100
- Samsung Galaxy S24 Ultra - Titanium Black - 12/512GB - Biztosító által cserélt - ÚJ
- Lenovo Thinkcentre M720s SFF,i3-8100,8GBDDR4,256GB NVMe SSD,WIN11
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


