MAIN START
LD GR1,=#3F5C ; 0011 1111 0101 1100
CALL BITN
RET
BITN START ;ビットの数 [a04.cas]
PUSH 0,GR1 ;GR1の退避
LAD GR0,0 ;初期値
LB0 SLL GR1,1 ;1ビット左シフト [ a ]
JOV LB1 ;オーバフローのチェック
JNZ LB0 ; [ b ]
POP GR1 ;GR1の復元
RET ;終了
LB1 ADDA GR0,=1 ;カウントアップ
JUMP LB0
END