]> gitweb.factorcode.org Git - factor.git/blobdiff - basis/math/bitwise/bitwise.factor
endian: replaces io.binary and io.binary.fast.
[factor.git] / basis / math / bitwise / bitwise.factor
index 4589f19065e347a71316d8da4f1576be3dbee357..ffed471cd6639c53154e5ddd8ecc37bc6b9c9b8e 100644 (file)
@@ -150,3 +150,12 @@ M: object bit-count
 : even-parity? ( obj -- ? ) bit-count even? ;
 
 : odd-parity? ( obj -- ? ) bit-count odd? ;
+
+: d>w/w ( d -- w1 w2 )
+    [ 0xffffffff bitand ] [ -32 shift 0xffffffff bitand ] bi ;
+
+: w>h/h ( w -- h1 h2 )
+    [ 0xffff bitand ] [ -16 shift 0xffff bitand ] bi ;
+
+: h>b/b ( h -- b1 b2 )
+    [ 0xff bitand ] [ -8 shift 0xff bitand ] bi ;