Új hozzászólás Aktív témák
-
Szirty
őstag
Hali norcee!
Példaképp írtam egy rövid kódot, ami hasonlót művel. Próbálj meg ebből kiindulni ha amegfelel:
L #Kezdet // A a kért elem száma (ha ez 0, akkor az első elemet adja vissza)
L 4
*I // A kezdőcím előállítása (*4, mivel REAL duplaszó, ami 4 byte)
L 50
+I // 50 hozzádása (50-es címen van az első real típusú elem, amit ki kell olvasni)
SLD 3 // Léptetés a bit címek miatt, a pointer előállításához
T #Ptr // #Ptr a kért elem címére mutat az instance DB-n belül
L DID [#Ptr] // A kért elem betöltése
T #Eredmeny // A kért elem másolása a kimeneti duplaszóbaEz egy FB-ben van, ahol az interface rész így fest:
FUNCTION_BLOCK FB 2
TITLE =
VERSION : 0.1
VAR_INPUT
Kezdet : INT ;
Hossz : INT ;
END_VAR
VAR_OUTPUT
Eredmeny : REAL ;
END_VAR
VAR
Dummy1 : ARRAY [1 .. 42 ] OF BYTE ;
Real_1 : ARRAY [1 .. 100 ] OF REAL ;
END_VAR
VAR_TEMP
Ptr : DWORD ; //Pointer
END_VARA #Hossz-nak itt nincs szerepe, a #Dummy1 tömb pedig csak azért van, hogy az 50-es címen kezdődjön az a 100 valós típusú változó.
A blokk #Eredmény kimeneten visszaadja a #Kezdet-ben megadott számú elemet Real_1 tömbből.
Ha egyszerre több elemet kell másolni, akkor a célnál annyi elem fog landolni ahányat másolsz, ez gondolom nem vitás. Emiatt (a változó adathossz miatt) ez vagy ANY típus lehet (mármint a cél paramétere) vagy egy DB, amiben előre el van készítve annyi elem, amennyinél többet soha nem másolsz.
Ez a része nem volt világos annak hogy hogyan akarod. De az BLKMOV-val megoldható, ha összeállítasz neki egy (vagy ha a célnak is kell, akkor kettő ANY pointert, éppen úgy, ahogy w3dzz-nek szóló üzenetben is szó van róla.
Új hozzászólás Aktív témák
- Milyen billentyűzetet vegyek?
- Elbaltázott tankolás miatt csúszik a NASA Holdutazása
- Kényszerűen visszavesz az AI-ból a Windows 11-ben a Microsoft?
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Kerékpárosok, bringások ide!
- Egyéni arckép 2. lépés: ARCKÉPSZERKESZTŐ
- Hardcore café
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Anglia - élmények, tapasztalatok
- mefistofeles: Az elhízás nem akaratgyengeség!
- További aktív témák...
- BESZÁMÍTÁS! Intel Core i5 9400F 6 mag 6 szál processzor garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
- Akció! Gamer PC-Számítógép! Intel Ultra 5 245K / RTX 3080 10GB / 16GB DDR5 / 1TB SSD!
- Azonnali készpénzes Sony Playstation 4 Slim / PS4 Pro felvásárlás személyesen/csomagküldéssel
- Surface 3 - 13,5" 2k érintő, i5 1035G7, Iris Plus, 16GB RAM, SSD, jó akku, újszerű állapot, számla
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

