// output of ./demo/bits/bin2naf-demo.cc: // Description: //% Sparse signed binary representation (nonadjacent form, NAF). arg 1: 43 == n [Max] default=43 arg 2: 0 == n0 [Min] default=0 arg 3: 1 == q [Whether to print sum] default=1 0: ....... ....... 0 = 1: ......1 ......P 1 = +1 2: .....1. .....P. 2 = +2 3: .....11 ....P.M 3 = +4 -1 4: ....1.. ....P.. 4 = +4 5: ....1.1 ....P.P 5 = +4 +1 6: ....11. ...P.M. 6 = +8 -2 7: ....111 ...P..M 7 = +8 -1 8: ...1... ...P... 8 = +8 9: ...1..1 ...P..P 9 = +8 +1 10: ...1.1. ...P.P. 10 = +8 +2 11: ...1.11 ..P.M.M 11 = +16 -4 -1 12: ...11.. ..P.M.. 12 = +16 -4 13: ...11.1 ..P.M.P 13 = +16 -4 +1 14: ...111. ..P..M. 14 = +16 -2 15: ...1111 ..P...M 15 = +16 -1 16: ..1.... ..P.... 16 = +16 17: ..1...1 ..P...P 17 = +16 +1 18: ..1..1. ..P..P. 18 = +16 +2 19: ..1..11 ..P.P.M 19 = +16 +4 -1 20: ..1.1.. ..P.P.. 20 = +16 +4 21: ..1.1.1 ..P.P.P 21 = +16 +4 +1 22: ..1.11. .P.M.M. 22 = +32 -8 -2 23: ..1.111 .P.M..M 23 = +32 -8 -1 24: ..11... .P.M... 24 = +32 -8 25: ..11..1 .P.M..P 25 = +32 -8 +1 26: ..11.1. .P.M.P. 26 = +32 -8 +2 27: ..11.11 .P..M.M 27 = +32 -4 -1 28: ..111.. .P..M.. 28 = +32 -4 29: ..111.1 .P..M.P 29 = +32 -4 +1 30: ..1111. .P...M. 30 = +32 -2 31: ..11111 .P....M 31 = +32 -1 32: .1..... .P..... 32 = +32 33: .1....1 .P....P 33 = +32 +1 34: .1...1. .P...P. 34 = +32 +2 35: .1...11 .P..P.M 35 = +32 +4 -1 36: .1..1.. .P..P.. 36 = +32 +4 37: .1..1.1 .P..P.P 37 = +32 +4 +1 38: .1..11. .P.P.M. 38 = +32 +8 -2 39: .1..111 .P.P..M 39 = +32 +8 -1 40: .1.1... .P.P... 40 = +32 +8 41: .1.1..1 .P.P..P 41 = +32 +8 +1 42: .1.1.1. .P.P.P. 42 = +32 +8 +2 43: .1.1.11 P.M.M.M 43 = +64 -16 -4 -1