16 lines
728 B
Plaintext
16 lines
728 B
Plaintext
ClearAll[ShowSetRightBits]
|
|
ShowSetRightBits[b_String,n_Integer]:=Module[{poss,chars},
|
|
chars=Characters[b];
|
|
poss=Position[chars,"1"];
|
|
poss=Union[Flatten[Outer[Plus,poss,Range[n]]]];
|
|
{{"In :",b},{"Out:",StringJoin[ReplacePart[chars,(List/@poss)->"1"]]}}//Grid
|
|
]
|
|
ShowSetRightBits["1000",2]
|
|
ShowSetRightBits["0100",2]
|
|
ShowSetRightBits["0010",2]
|
|
ShowSetRightBits["0000",2]
|
|
ShowSetRightBits["010000000000100000000010000000010000000100000010000010000100010010",0]
|
|
ShowSetRightBits["010000000000100000000010000000010000000100000010000010000100010010",1]
|
|
ShowSetRightBits["010000000000100000000010000000010000000100000010000010000100010010",2]
|
|
ShowSetRightBits["010000000000100000000010000000010000000100000010000010000100010010",3]
|