zero padding is mostly used with unsiged integers, and is quite difficult to properly implement for signed integers. Disbaling iti n that case seems like a good compromise