Bonjour,
Avez-vous ou savez-vous où je peux trouver des DFB unity divers et variées.
>Merci
DFB SUR UNITY
- MATT
- Code sa première boucle
- Messages : 12
- Enregistré le : 18 avr. 2016, 21:24
- Localisation : Charente
DFB SUR UNITY
L'urgence, c'est fait!
L'impossible, c'est en cours!
Pour les miracles, il faut prévoir un délai!
L'impossible, c'est en cours!
Pour les miracles, il faut prévoir un délai!
- itasoft
- Mi homme - Mi automate
- Messages : 7168
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: DFB SUR UNITY
Slts,
Disons que ya une fonction qui manque cruellement (surtout quand le besoin s’en fait sentir, lol)
Celle de connaître le nombre de bits à 1 dans un mot de 16 ou 32 bits
Exemples :
(* %MW4=Nombre de bits à 1 dans le mot %MD0 *)
%MD2:=%MD0;
%MW4:=0;
WHILE %MD2<>0 DO
%MW4:=%MW4+(%MD2 AND 1);
%MD2:=SHR(%MD2,1);
END_WHILE;
(* %MW4=Nombre de bits à 1 dans le mot %MW0 *)
%MW2:=%MW0;
%MW4:=0;
WHILE %MW2<>0 DO
%MW4:=%MW4+(%MW2 AND 1);
%MW2:=SHR(%MW2,1);
END_WHILE;
------------------------------------
Aussi :
Dans les instructions de décalages (SHR,SHL) le nombre de positions vers la droite ou vers la gauche est une constante fixe Ex : (SHR,1)
Parfois, le besoin se fait cruellement sentir d’avoir le nombre de positions qui soit une variable
Exemple :
(*
Décalage à gauche des bits du mot %MW0 de X positions, résultat dans %MW2
%MW4=nombre de positions
*)
%MW2:=%MW0;
%MW2:=%MW2*REAL_TO_INT(EXPT(2.0,INT_TO_REAL(%MW4)));
(* Ceci dit, on peut aussi faire une boucle, LOL *)
%MW2:=%MW0;
FOR %MW3:=1 TO %MW4 DO
%MW2:=SHL(%MW2,1);
END_FOR;
Disons que ya une fonction qui manque cruellement (surtout quand le besoin s’en fait sentir, lol)
Celle de connaître le nombre de bits à 1 dans un mot de 16 ou 32 bits
Exemples :
(* %MW4=Nombre de bits à 1 dans le mot %MD0 *)
%MD2:=%MD0;
%MW4:=0;
WHILE %MD2<>0 DO
%MW4:=%MW4+(%MD2 AND 1);
%MD2:=SHR(%MD2,1);
END_WHILE;
(* %MW4=Nombre de bits à 1 dans le mot %MW0 *)
%MW2:=%MW0;
%MW4:=0;
WHILE %MW2<>0 DO
%MW4:=%MW4+(%MW2 AND 1);
%MW2:=SHR(%MW2,1);
END_WHILE;
------------------------------------
Aussi :
Dans les instructions de décalages (SHR,SHL) le nombre de positions vers la droite ou vers la gauche est une constante fixe Ex : (SHR,1)
Parfois, le besoin se fait cruellement sentir d’avoir le nombre de positions qui soit une variable
Exemple :
(*
Décalage à gauche des bits du mot %MW0 de X positions, résultat dans %MW2
%MW4=nombre de positions
*)
%MW2:=%MW0;
%MW2:=%MW2*REAL_TO_INT(EXPT(2.0,INT_TO_REAL(%MW4)));
(* Ceci dit, on peut aussi faire une boucle, LOL *)
%MW2:=%MW0;
FOR %MW3:=1 TO %MW4 DO
%MW2:=SHL(%MW2,1);
END_FOR;
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
-
- Mi homme - Mi automate
- Messages : 2087
- Enregistré le : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: DFB SUR UNITY
Salut !
sympa les fonctions..
On peut aussi tout simplement multiplier ou diviser par les puissances de deux pour réaliser des décalages non ?
/2 = 1 bit vers la droite
/4 = 2 bits vers la droite
etc...
*2 = 1 bit vers la gauche
*4 = 2 bits vers la gauche
etc...
sympa les fonctions..
On peut aussi tout simplement multiplier ou diviser par les puissances de deux pour réaliser des décalages non ?
/2 = 1 bit vers la droite
/4 = 2 bits vers la droite
etc...
*2 = 1 bit vers la gauche
*4 = 2 bits vers la gauche
etc...
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part !
- itasoft
- Mi homme - Mi automate
- Messages : 7168
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: DFB SUR UNITY
slts,
oui mais tu met dans quelle variable le nombre de décalages à faire ???
oui mais tu met dans quelle variable le nombre de décalages à faire ???
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
-
- Mi homme - Mi automate
- Messages : 2087
- Enregistré le : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: DFB SUR UNITY
pas faux...
En te relisant, je m'aperçois que c'est ce que tu fais déjà.
Donc je fais du bruit..pour rien
désolé !
En te relisant, je m'aperçois que c'est ce que tu fais déjà.
Donc je fais du bruit..pour rien
désolé !
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part !
- itasoft
- Mi homme - Mi automate
- Messages : 7168
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: DFB SUR UNITY
slts, phil,
J’aurais du poser la question autrement , LOL
L’opérateur saisi via un IHM :
-La valeur à décaler dans %MW0
-Le nombre de décalages à faire dans la variable %MW4
Ecrire une ligne de programme pour effectuer ce décalage
J’aurais du poser la question autrement , LOL
L’opérateur saisi via un IHM :
-La valeur à décaler dans %MW0
-Le nombre de décalages à faire dans la variable %MW4
Ecrire une ligne de programme pour effectuer ce décalage
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr