def scalb(x, i):
    """
    This is like ``>>``/``<<``, but without precision loss i.e. it changes the fixed-point format.
    In general 'i' can only be constant, changing the fixed-point format dynamically makes little sense in FPGA.

    >>> a = Sfix(0.5, 0, -17)
    >>> a
    0.5 [0:-17]
    >>> scalb(a, 8)
    128.0 [8:-9]
    >>> scalb(a, -8)
    0.001953125 [-8:-25]
    """
    return x.scalb(i)