Please note that the recommended version of Scilab is 2024.1.0. This page might be outdated.
See the recommended documentation of this function
CONVERT
Conversion de type de données
Aperçu
Contenu
Description
Ce bloc convertit une entrée de type entier ou réel double vers un autre type réel double ou entier. Ce bloc est particulièrement utile pour connecter un bloc qui accepte ou produit seulement le type de données entier avec un autre bloc qui produit ou accepte seulement le type de données double.
Il peut également être utilisé pour prendre la demi-partie inférieure de l'entrée par une
conversion dégradante telle que int16 vers int8. Pour ce type d'utilisation et si vous ne voulez
pas de conversion de type, vous pouvez également utiliser le bloc
EXTRACTBITS avec le paramètre Bits to extract
placé à Lower half
.
Pour une conversion vers le haut d'un entier signé vers un autre entier signé, le signe est propagé.
Quand la sortie est un entier et qu'un dépassement de capacité se produit, le bloc donne trois formes de résultats :
Un résultat normal non saturé. Par exemple, si le type est int8 et le résultat 128, la valeur de sortie du bloc sera -128.
Un résultat saturé. Pour l'exemple précédent la valeur de sortie du bloc sera 127
Un message d'erreur prévenant l'utilisateur du dépassement de capacité.
L'utilisateur peut sélectionner l'une de ces trois formes en mettant le champ Do on Overflow à 0,1 ou 2.
Types de données
Le bloc supporte les types de données suivants :
Entrée : types entiers et type réel double de Scilab (paramètre Input Type).
Sortie : types entiers et type réel double de Scilab (paramètre Output Type).
Boîte de dialogue
Input Type (1: double, 3:int32, 4:int16, 5:int8, ...)
Indique le type de donnée en entrée qui peut être double ou entier. Entre 1 et 8.
Propriétés : Type 'vec' de taille 1.
Output Type (1: double, 3:int32, 4:int16, 5:int8, ...)
Indique le type de donnée en sortie qui peut être double ou entier : entre 1 et 8.
Propriétés : Type 'vec' de taille 1.
Do on Overflow (0:Nothing 1:Saturate, 2:Error)
Entre 0 et 2. Lors d'un dépassement de capacité, si le paramètre est égal à :
0 : le résultat est non saturé.
1 : le résultat saturé.
2 : la simulation affiche un message d'erreur.
Propriétés : Type 'vec' de taille 1.
Propriétés par défaut
always active: non
direct-feedthrough: oui
zero-crossing: non
mode: non
regular inputs:
- port 1 : size [-1,-2] / type 1
regular outputs:
- port 1 : size [-1,-2] / type 3
number/sizes of activation inputs: 0
number/sizes of activation outputs: 0
continuous-time state: non
discrete-time state: non
object discrete-time state: non
name of computational function: convert
Exemple
Cet exemple montre la propagation du bit de signe pendant une conversion d'int8 à int16. Ouvrir cet exemple dans Xcos
Fonction d'interfaçage
Fonction de calcul
SCI/modules/scicos_blocks/src/c/convert.c
Voir aussi
- EXTRACTBITS — Extraction de bits
Auteurs
Fady NASSIF - INRIA
<< BITSET | Palette Entier | DFLIPFLOP >> |