Arbitrary precision fixed-point values can participate in expressions that use any operators supported by C/C++. After an arbitrary precision fixed-point type or variable is defined, their usage is the same as for any floating point type or variable in the C/C++ languages.
Observe the following caveats:
- Zero and Sign Extensions
All values of smaller bit-width are zero or sign-extended depending on the sign of the source value. You may need to insert casts to obtain alternative signs when assigning smaller bit-widths to larger.
Truncation occurs when you assign an arbitrary precision fixed-point of larger bit-width than the destination variable.