Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Português - 日本語 - Русский
Aide de Scilab >> Fonctions de compatibilité > mtlb_int64

mtlb_int64

Fonction d'émulation de la fonction Matlab int64()

Description

Les versions Matlab et Scilab de la fonction int64() produisent des résultats le plus souvent différents :

  • Hors des bornes de l'intervalle de travail principal, la version Scilab de int64() travaille en congruence su rl'intervalle ("modulo"), alors que la version Matlab mtlb_int64() sature et reste constante.
  • Pour les valeurs non entières, la version Scilab int64() tronque la partie fractionnaire, alors que la version Matlab mtlb_int64() arrondit à l'entier le plus proche.

Soit imin = -(2^32) = -9223372036854775808 et imax = 2^32 - 1 = 9223372036854775807.

xint64(x)mtlb_int64(x)
%nan00
-%infiminimin
imin-2imax-1imin
imin-1imaximin
iminiminimin
-80.7-80-81
-80.5-80-81
-80.4-80-80
10.21010
10.51011
10.511011
imaximaximax
imax+1iminimax
imax+2imin+1imax
imax+3imin+2imax
%infimaximax

mtlb_int64 ne doit pas être utilisée pour une programmation manuelle.

La fonction mtlb_int64(A) est utilisée par mfile2sci pour remplacer int64(A) quand il n'est pas possible de savoir ce qu'est le paramètre d'entrée pendant la conversion d'un code Matlab vers Scilab. Cette fonction détermine alors la sémantique correcte pendant l'exécution.

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Feb 14 15:00:00 CET 2019