testbits.awk

来自「gawk: linux下资料处理工具」· AWK 代码 · 共 28 行

AWK
28
字号
# bits2str --- turn a byte into readable 1's and 0'sfunction bits2str(bits,        data, mask){    if (bits == 0)        return "0"    mask = 1    for (; bits != 0; bits = rshift(bits, 1))        data = (and(bits, mask) ? "1" : "0") data    while ((length(data) % 8) != 0)        data = "0" data    return data}BEGIN {    printf "123 = %s\n", bits2str(123)    printf "0123 = %s\n", bits2str(0123)    printf "0x99 = %s\n", bits2str(0x99)    comp = compl(0x99)    printf "compl(0x99) = %#x = %s\n", comp, bits2str(comp)    shift = lshift(0x99, 2)    printf "lshift(0x99, 2) = %#x = %s\n", shift, bits2str(shift)    shift = rshift(0x99, 2)    printf "rshift(0x99, 2) = %#x = %s\n", shift, bits2str(shift)}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?