class_docstr: Default constructor
  Args:
      - N : Total number of bits in the fixed point number
      - I : Integer bits in the fixed point number
      - F = N-I : Fixed point bits in the number
      - signed : True/False - If True, use 2's complement when converting to float
      - self.integer_bits : Bits corresponding to the integer part of the number
      - self.decimal_bits : Bits corresponding to the decimal part of the number
code: def __init__(
      self, N, I, signed=True, integer_bits=None, decimal_bits=None
  ):  # noqa E741
      self.N = N
      self.I = I  # noqa E741
      self.F = N - I
      self.signed = signed
      self.integer_bits = (
          [0] * self.I if integer_bits is None else integer_bits
      )
      self.decimal_bits = (
          [0] * self.F if decimal_bits is None else decimal_bits
      )
  
file_path: hls4ml/hls4ml/utils/fixed_point_utils.py
imports: import math
  import sys
label_desc: Use image node_id 1 to create a new FixedPointEmulator object  with example: obj = FixedPointEmulator(N, I, signed, integer_bits, decimal_bits)