dumpwordコマンドで数値以外の値が引数のときにエラーが発生するよう修正
[YACASL2.git] / as / FUNC / count1.casl
1 COUNT1  START
2 ;       入力    GR1:検索する語
3 ;       処理    GR1中の'1'のビットの個数を求める
4 ;       出力    GR0:GR1中の'1'のビットの個数
5         PUSH    0,GR1
6     PUSH        0,GR2
7     SUBA        GR2,GR2
8     AND         GR1,GR1
9     JZE         RETURN
10 MORE LAD        GR2,1,GR2
11         LAD             GR0,-1,GR1
12     AND         GR1,GR0
13     JNZ         MORE
14 RETURN LD       GR0,GR2
15         POP             GR2
16     POP         GR1
17     RET
18     END