Új hozzászólás Aktív témák
-
Szirty
őstag
Helló Szabest!
Valami szétcsúszott a prohardveren, mert válaszolni nem lehet, csak új üzenetet írni.
Szóval én verzióm a következő:"Kérdésem, hogy van-e ilyen gyári FC, SFC, amivel végig tudok "scanneltetni' egy DB-t hogy szerepel-e benne a beadott szám?"
Igen, van olyan, amelyikkel meg lehet csinálni. Az TI-S7 Converting Blocks / FC86 TBL_FIND meg tudja csinálni.
Ez adott mintát (sorozatot) keres egy táblázatban. A minta természetesen lehet egy elemű is.
A táblázatban és a mintában BYTE, WORD, INT, DWORD, DINT, REAL típusú elemek lehetnek.
Egy lényeges kikötés van, hogy a táblázat első elemének a táblázat hosszát (a keresés hatókörét) kell megadnia. Tehát abból tudja mennyi adatot nézzen át.
A blokk hívása így fest:SRC: a táblázat, amiben keresni kell
PATRN: A minta amit a táblázatban keres
CMD: A keresésre vonatkozó parancs, ami B#16#01 = azonosság keresése, B#16#02 = eltérés keresése lehet
E_TYPE: Az adattípust adja meg, B#16#02 = BYTE, B#16#04 = WORD, B#16#05 = INT, B#16#06 = DWORD, B#16#07 = DINT, B#16#08 = REAL
INDX: EGy in/out paraméter. Az itt megadott számú elemnél kezdi el a táblázatban a keresést és ide teszi bele, hogy hanyadik elem felel meg a keresési kritériumnak.
RET_VAL: Itt mondja meg, hogy talált vagy nem találta a keresett mintát, illetve ha egyéb baja van W#16#0008 - Nem talált semmit, W#16#0000 - Talált.INDX értékét akkor kell figyelembe venni, ha RET_VAL értéke W#16#0000
A példában szereplő hívásnak ez a DB tartalom került átadásra:Ahol az INTArray definíciója ez: INTArray[0..100] INT
Természetesen a keresés helye nem kell hogy tömbdefiníció legyen az FC 86-nak ANY típusú pointerrel bármit meg lehet adni, de a tábla nem tartalmazhat eltérő (vegyes) típusú adatokat.
Ez a kép működés közben készült:A blokk az 1997-es számot kereste és találta meg a táblázat 14-es elemében.
Új hozzászólás Aktív témák
- Xiaomi 17 Ultra - jó az optikája
- Luck Dragon: Óraátállítás
- Mesterséges intelligencia topik
- Xbox Series X|S
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Új termékkel és áremeléssel reagál a memóriahiányra a Raspberry Pi
- Otthoni hálózat és internet megosztás
- hcl: Könnyű légierő
- Androidos fejegységek
- További aktív témák...
- Ryzen 7 5700X / RX 6800 16GB / B550M WIFI / 32GB RAM 3600Mhz / 1TB NVMe SSD / 650W GOLD
- HP 250R G10 - 15.6"FHD IPS - Core 5 120U - 16GB - 512GB - Win11 - 3 év garancia - MAGYAR
- Eladó Anker Soundcare Motion Boom Plus hordozható zenedoboz!
- GIGABYTE GeForce RTX 3060 12GB (Beszámítás)
- Arturia KeyStep 32 MIDI USB
- Lego replika Tokyo 20051 építőkészlet doboz nélkül
- Apple iPhone 17 Pro 256GB Deep Blue Újszerű állapot 100% akku (51 ciklus)
- Telefon felvásárlás!! Apple iPhone SE (2016), Apple iPhone SE2 (2020), Apple iPhone SE3 (2022)
- Új Acer Nitro V15 FHD IPS 144Hz i9-13900H 14mag 16GB 512GB SSD Nvidia RTX 4060 8GB Win11 Garancia
- Samsung Galaxy Tab A8 / 32GB /Kártyafüggetlen / 12 Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
