в MSP430 такая штука аппратно сделана, через регистры генерации констант R2, R3. Констант несколько: '0', '1', '2', '4', '8', '-1', выбираются аппратано по контексту. Это позволило сократить объем кода, количество инструкций, увеличить скорость выполнения за счет регистровой адресации.