我想在Clojure中使用按位函數(bit-shift-right
,bit-and
等),其中操作數無符號16位整數。在Clojure中的無符號16位整數
A 16位整數是一個十進制數從0到65535,從0000 0000 0000 0000 1111 1111 1111 1111
例如這裏可選地123的二進制數是java.lang.Long中,所以將產生錯誤的答案:
(bit-not 123)
如何使123的16位無符號整數,因此上述產生正確的答案,這是十進制65412?
因此0000 0000 0111 1011(123)應變成1111 1111 1000 0100(65412)。
我一直在使用計算器進行雙重檢查,65412是答案應該是什麼。這也是參考文獻123:http://adventofcode.com/2015/day/7 –
@ChrisMurphy Oops - 掩碼應該是'16rFFFF',而不是'16rFF00'。糾正。 – Thumbnail