Ú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
- BestBuy topik
- Kötelező frissítésnek számít a Microsoft legújabb csomagja a Windows 11-hez
- Samsung Galaxy S26 - szeret, nem szeret
- Crimson Desert
- gban: Ingyen kellene, de tegnapra
- Tudományos Pandémia Klub
- The Division 2 (PC, XO, PS4)
- Fejhallgató erősítő és DAC topik
- Nem viszi sehova a Raptor Lake-et az Intel
- Kerékpárosok, bringások ide!
- További aktív témák...
- GIGABYTE RTX 4080 16GB WINDFORCE 6 hónap gyári garival
- Apple iPhone Air 256GB Light Gold Színben 2028.12.28-ig Alza Garanciával Akku 100%
- Apple iPhone 16 128GB Fehér Színben 2026.09.15-ig Apple Garancia Akku 98% Gyári
- NVIDIA GeForce GTX 1080 Founders Edition
- Bravo 15 C7VE 15.6" FHD IPS Ryzen 7 7735HS RTX 4050 16GB 512GB NVMe magyar vbill gar
- 27% - ASUS Vivobook OLED Notebook! Ryzen 5 7535HS / 16GB 6400MHz / 500GB NVMe
- 27% - LG UltraGear 27GS93QE-B OLED Monitor! 2560x1440 / 240Hz / 0.03ms / G-SYNC / FreeSync
- Apple iPhone 16 Pro Max 256GB,Újszerű,Dobozaval,12 boával garanciával
- Apple iPhone 16 Pro 128GB,Újszerű,Dobozaval,12 hónap garanciával
- Apple iPhone 17 Pro 256GB Deep Blue Újszerű állapot 100% akku (51 ciklus)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
