Slts,
Décomposition de la fonction BCD_TO_INT ,INT_TO_BCD à quoi ça sert ?
C’est dans les cas ou on à besoin de ces fonctions dans un langage qui n’en possède pas (ex :Script)
(* Valeur en BCD *)
Wbcd:=16#1234;
(* Valeur en binaire (INT) *)
Wint:=(Wbcd/4096)*1000
+((Wbcd REM 4096)/256)*100
+((Wbcd REM 256)/16)*10
+(Wbcd REM 16);
INT_TO_BCD
(* Valeur en INT *)
Wint:=1234;
(* Valeur en BCD *)
Wbcd:=(Wint/1000)*4096
+ ((Wint REM 1000)/100)*256
+ ((Wint REM 100)/10)*16
+ (Wint REM 10);
autres fonctions à faire
Décomposition de la fonction BCD_TO_INT
- itasoft
- Mi homme - Mi automate
- Messages : 7037
- Inscription : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Décomposition de la fonction BCD_TO_INT
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
- Ashkore
- Aguerri de l'automation
- Messages : 77
- Inscription : 05 nov. 2015, 11:55
- Localisation : Bouches-du-Rhone
Re: Décomposition de la fonction BCD_TO_INT
Salut,
Je n'ai jamais vu ni entendu parler de ces fonctions, pourrais-tu nous préciser à quoi servent-elle ?
Ou du moins m'expliquer à quoi correspond une valeur en BCD.
Merci d'avance.
Je n'ai jamais vu ni entendu parler de ces fonctions, pourrais-tu nous préciser à quoi servent-elle ?
Ou du moins m'expliquer à quoi correspond une valeur en BCD.
Merci d'avance.
"L'échec est le fondement de la réussite."
- itasoft
- Mi homme - Mi automate
- Messages : 7037
- Inscription : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Décomposition de la fonction BCD_TO_INT
[attachment=0]__BCD.JPG[/attachment]
cliquer dessus pour agrandir la photo
cliquer dessus pour agrandir la photo
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
- itasoft
- Mi homme - Mi automate
- Messages : 7037
- Inscription : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Décomposition de la fonction BCD_TO_INT
suite,
pour faire ça, il faut d'abord convertir le mot en BCD avant de le copier sur les 16 sorties.
EX:
%MW0:=1234;
%Q2.0:16:=INT_TO_BCD(%MW0);
pour faire ça, il faut d'abord convertir le mot en BCD avant de le copier sur les 16 sorties.
EX:
%MW0:=1234;
%Q2.0:16:=INT_TO_BCD(%MW0);
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Décomposition de la fonction BCD_TO_INT
Bonjour,
aurais tu également la décomposition de la fonction INT_AS_DINT (utilisable sous Unity) ?
Merci d'avance.
aurais tu également la décomposition de la fonction INT_AS_DINT (utilisable sous Unity) ?
Merci d'avance.
-
- Mi homme - Mi automate
- Messages : 2076
- Inscription : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: Décomposition de la fonction BCD_TO_INT
Salut !
fonction INT_AS_DINT
C'est utilisé pour obliger UNITY à prendre une variable INT comme DINT
Donc une variable %MW 0 déclarée en INT sera interprétée comme %MW0 et %MW1 en Double INT !
fonction INT_AS_DINT
C'est utilisé pour obliger UNITY à prendre une variable INT comme DINT
Donc une variable %MW 0 déclarée en INT sera interprétée comme %MW0 et %MW1 en Double INT !
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 : 7037
- Inscription : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Décomposition de la fonction BCD_TO_INT
@davy
c'est expliqué sur l'aide en ligne de Unity, je peux pas faire mieux ni plus simple, lol
c'est expliqué sur l'aide en ligne de Unity, je peux pas faire mieux ni plus simple, lol
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Décomposition de la fonction BCD_TO_INT
pour @ashkore : https://fr.wikipedia.org/wiki/D%C3%A9ci ... A9_binaire
la première fonction prend 2 INT en entrée (poids faible + poids fort) pour un DINT en sortie (= poids fort * 65536 + poids faible)
la deuxième prend un INT en entrée pour le convertir en DINT (extension du bit de signe)
@+
Ne pas confondre INT_AS_DINT et INT_TO_DINT ...C'est utilisé pour obliger UNITY à prendre une variable INT comme DINT
la première fonction prend 2 INT en entrée (poids faible + poids fort) pour un DINT en sortie (= poids fort * 65536 + poids faible)
la deuxième prend un INT en entrée pour le convertir en DINT (extension du bit de signe)
@+