math.bitwise: bits is clearer this way.

db4
John Benediktsson 2011-10-14 13:54:08 -07:00
parent 4fb66c0f05
commit cc49bbfb27
1 changed files with 2 additions and 2 deletions

View File

@ -15,9 +15,9 @@ IN: math.bitwise
: mask ( x n -- ? ) bitand ; inline : mask ( x n -- ? ) bitand ; inline
: mask? ( x n -- ? ) mask 0 > ; inline : mask? ( x n -- ? ) mask 0 > ; inline
: wrap ( m n -- m' ) 1 - bitand ; inline : wrap ( m n -- m' ) 1 - bitand ; inline
: bits ( m n -- m' ) 2^ wrap ; inline
: mask-bit ( m n -- m' ) 2^ mask ; inline
: on-bits ( m -- n ) 2^ 1 - ; inline : on-bits ( m -- n ) 2^ 1 - ; inline
: bits ( m n -- m' ) on-bits mask ; inline
: mask-bit ( m n -- m' ) 2^ mask ; inline
: toggle-bit ( m n -- m' ) 2^ bitxor ; inline : toggle-bit ( m n -- m' ) 2^ bitxor ; inline
: >signed ( x n -- y ) : >signed ( x n -- y )
[ bits ] keep 2dup neg 1 + shift 1 = [ 2^ - ] [ drop ] if ; [ bits ] keep 2dup neg 1 + shift 1 = [ 2^ - ] [ drop ] if ;