La programmation synthétique ( SP ) est une technique avancée de programmation des calculatrices HP-41C et Elektronika B3-34 , impliquant la création d'instructions (ou de combinaisons d'instructions et d'opérandes) qui ne peuvent pas être obtenues à l'aide des capacités standard de la calculatrice.
Certaines instructions du HP-41C sont codées en mémoire à l'aide de plusieurs octets . Certaines de ces séquences d'octets correspondent à des instructions que la calculatrice est capable d'exécuter, mais celles-ci ne peuvent pas être saisies dans la mémoire programme à l'aide des méthodes de saisie de programme conventionnelles ( c'est-à -dire à l'aide de la calculatrice comme décrit dans le manuel d'utilisation).La programmation synthétique utilise un bug dans le micrologiciel de la calculatrice pour saisir ces séquences d'octets comme une séquence d'autres instructions, puis en sautant partiellement à mi-chemin de la première instruction, de sorte que la calculatrice croit que la fin de la première instruction est en fait le début d'une nouvelle. Cela s'appelait le byte jumper ou le byte grabber .
On ne sait pas si les créateurs du HP-41 étaient au courant de tous ces « trous noirs ». HP ne soutenait pas officiellement ces techniques, mais était probablement intrigué par ces opérations étranges et, dans certains cas, autorisait les passionnés à s'entraîner dans leurs bureaux et contribuait à l'améliorer par curiosité.
HP-15C
La programmation synthétique est également possible sur le HP-15C (original) .