ちょっとお尋ねします
手続きカウンタの値により手続き順に処理を飛ばすプログラムを考えています
この時手続きカウンタの評価が先頭につきますが
このオーバーヘッドがいやなのでProgramCounterに次の処理の飛び先をロードしてjumpさせたいのですが

if 手続きカウンタ==1 jump 処理1:  
if 手続きカウンタ==2 jump 処理2:
      :
if 手続きカウンタ==n jump 処理n:  手続きnが多いとオーバーヘッドが無視できなくなる
  else 出口:

処理1: {  
   :
  jump_出口:
手続きカウンタ +=1 }             // ここをPCに代入するための飛び先番地に変更


処理n: { 
   :
手続きカウンタ=1(手続きカウンタ初期化) // ここをPCに代入するための処理1の飛び先番地に変更
jump_出口: }

出口:

通常のCPUのJUMP命令は直値のみでレジスタ間接は無いので変化球技で実現する必要があります
こんな変なことをやって居る方はおられますか? 又、どのように実現したのでしょうか?