24 lines
497 B
Python
24 lines
497 B
Python
|
|
from typing import Any
|
||
|
|
|
||
|
|
def clamp_pos(x: int):
|
||
|
|
return x if x > 0 else 0
|
||
|
|
|
||
|
|
def lpad(x: Any, n: int, pad: chr = ' '):
|
||
|
|
x = str(x)
|
||
|
|
return clamp_pos(n - len(x))*pad + x
|
||
|
|
|
||
|
|
def debug_R(B: int):
|
||
|
|
# B = int('1'*7, 2)
|
||
|
|
for j in range(8):
|
||
|
|
j_sq = j**2
|
||
|
|
R_j = B << j_sq
|
||
|
|
lpadbin_R_j = lpad(bin(R_j)[2:], 64, pad='0')
|
||
|
|
print(f'{lpad(j_sq, 2)}: {lpadbin_R_j} {R_j}')
|
||
|
|
|
||
|
|
def main():
|
||
|
|
B = int(input('B: '), 2)
|
||
|
|
debug_R(B)
|
||
|
|
|
||
|
|
if __name__ == '__main__':
|
||
|
|
main()
|