REVRS START PUSH 0,GR1 ;レジスタの退避 PUSH 0,GR2 ;レジスタの退避 LD GR1,GR0 ; GR0をGR1に入れる LAD GR2,16 ;ループカウンタ LAD GR0,0 ;結果のビット列の初期化 CPA GR1,=0 LOOP JZE FIN ;残りのビットはすべて0 JPL OFF ;左端のビットは0 OR GR0,=#8000 ;左端のビットを1 OFF SUBA GR2,=1 ;ループカウンタ-1 JZE FIN1 ;全ビット処理済み? SRL GR0,1 ; 1ビット右にシフト SLL GR1,1 ; 1ビット左にシフト JUMP LOOP FIN SRL GR0,-1,GR2 ;未処理ビット数だけシフト FIN1 POP GR2 ;レジスタの復元 POP GR1 ;レジスタの復元 RET END