Module ida_ieee

Global Variables

E_SPECIAL_EXP

E_SPECIAL_EXP = 32767

FPVAL_NWORDS

FPVAL_NWORDS = 8

FPV_BADARG

FPV_BADARG = 0

FPV_NAN

FPV_NAN = 2

FPV_NINF

FPV_NINF = 4

FPV_NORM

FPV_NORM = 1

FPV_PINF

FPV_PINF = 3

IEEE_E

IEEE_E = 1

IEEE_EXONE

IEEE_EXONE = 16383

IEEE_M

IEEE_M = 2

IEEE_NI

IEEE_NI = 11

MAXEXP_DOUBLE

MAXEXP_DOUBLE = 1024

MAXEXP_FLOAT

MAXEXP_FLOAT = 128

MAXEXP_LNGDBL

MAXEXP_LNGDBL = 16384

REAL_ERROR_BADDATA

REAL_ERROR_BADDATA = -3

REAL_ERROR_BADSTR

REAL_ERROR_BADSTR = 3

REAL_ERROR_FORMAT

REAL_ERROR_FORMAT = -1

REAL_ERROR_FPOVER

REAL_ERROR_FPOVER = 2

REAL_ERROR_INTOVER

REAL_ERROR_INTOVER = 5

REAL_ERROR_OK

REAL_ERROR_OK = 1

REAL_ERROR_RANGE

REAL_ERROR_RANGE = -2

REAL_ERROR_ZERODIV

REAL_ERROR_ZERODIV = 4

Functions

ecleaz(x: eNI) ‑> void

ecleaz(x)

x: unsigned short [(8+3)]

Classes

fpvalue_shorts_array_t(data: unsigned short (&)[FPVAL_NWORDS])

: Proxy of C++ wrapped_array_t< uint16,FPVAL_NWORDS > class.

__init__(self, data) -> fpvalue_shorts_array_t

 data: unsigned short (&)[FPVAL_NWORDS]

Instance variables

  • bytes: bytevec_t _get_bytes(self) -> bytevec_t


  • data: unsigned short (&)[FPVAL_NWORDS] data


fpvalue_t(*args)

: Proxy of C++ fpvalue_t class.

__init__(self) -> fpvalue_t
__init__(self, _in) -> fpvalue_t

 in: bytevec16_t const &

Instance variables

  • bytes: void _get_bytes(self)


  • float: double _get_float(self) -> double


  • int64


  • shorts: wrapped_array_t< uint16,FPVAL_NWORDS > _get_shorts(self) -> fpvalue_shorts_array_t


  • sval


  • uint64


  • w: uint16 [8] w


Methods

  • assign(self, r: fpvalue_t) ‑> void assign(self, r)

    r: fpvalue_t const &


  • clear(self) ‑> void clear(self)


  • compare(self, r: fpvalue_t) ‑> int compare(self, r) -> int

    r: fpvalue_t const &


  • copy(self) ‑> ida_ieee.fpvalue_t copy(self) -> fpvalue_t


  • eabs(self) ‑> void eabs(self) Calculate absolute value.


  • fadd(self, y: fpvalue_t) ‑> fpvalue_error_t fadd(self, y) -> fpvalue_error_t Arithmetic operations.

    y: (C++: const fpvalue_t &) fpvalue_t const &


  • fdiv(self, y: fpvalue_t) ‑> fpvalue_error_t fdiv(self, y) -> fpvalue_error_t

    y: fpvalue_t const &


  • fmul(self, y: fpvalue_t) ‑> fpvalue_error_t fmul(self, y) -> fpvalue_error_t

    y: fpvalue_t const &


  • from_10bytes(self, fpval: void const *) ‑> fpvalue_error_t from_10bytes(self, fpval) -> fpvalue_error_t Conversions for 10-byte floating point values.

    fpval: (C++: const void *) void const *


  • from_12bytes(self, fpval: void const *) ‑> fpvalue_error_t from_12bytes(self, fpval) -> fpvalue_error_t Conversions for 12-byte floating point values.

    fpval: (C++: const void *) void const *


  • from_int64(self, x: int64) ‑> void from_int64(self, x)

    x: int64


  • from_str(self, p: char const *) ‑> fpvalue_error_t from_str(self, p) -> fpvalue_error_t Convert string to IEEE.

    p_str: (C++: const char **) pointer to pointer to string. it will advanced.


  • from_sval(self, x: sval_t) ‑> void from_sval(self, x) Convert integer to IEEE.

    x: (C++: sval_t)


  • from_uint64(self, x: uint64) ‑> void from_uint64(self, x)

    x: uint64


  • fsub(self, y: fpvalue_t) ‑> fpvalue_error_t fsub(self, y) -> fpvalue_error_t

    y: fpvalue_t const &


  • get_kind(self) ‑> fpvalue_kind_t get_kind(self) -> fpvalue_kind_t Get value kind.


  • is_negative(self) ‑> bool is_negative(self) -> bool Is negative value?


  • mul_pow2(self, power_of_2: int32) ‑> fpvalue_error_t mul_pow2(self, power_of_2) -> fpvalue_error_t Multiply by a power of 2.

    power_of_2: (C++: int32)


  • negate(self) ‑> void negate(self) Negate.


  • to_10bytes(self, fpval: void *) ‑> fpvalue_error_t to_10bytes(self, fpval) -> fpvalue_error_t

    fpval: void *


  • to_12bytes(self, fpval: void *) ‑> fpvalue_error_t to_12bytes(self, fpval) -> fpvalue_error_t

    fpval: void *


  • to_int64(self, round: bool = False) ‑> fpvalue_error_t to_int64(self, round=False) -> fpvalue_error_t

    round: bool


  • to_str(self, *args) ‑> void to_str(self, mode) Convert IEEE to string.

    mode: (C++: uint) broken down into:

    • low byte: number of digits after '.'

    • second byte: FPNUM_LENGTH

    • third byte: FPNUM_DIGITS


  • to_sval(self, round: bool = False) ‑> fpvalue_error_t to_sval(self, round=False) -> fpvalue_error_t Convert IEEE to integer (+-0.5 if round)

    round: (C++: bool)


  • to_uint64(self, round: bool = False) ‑> fpvalue_error_t to_uint64(self, round=False) -> fpvalue_error_t

    round: bool


Last updated