如何通过python将16位到8位转换为0x0300到0x03和0x00
我试着这样做
reg = 0x0300
print(reg[0:4], reg[4::])..
它告诉我“int”对象是不可下标的
reg = 0x0316
regbinary = bin(reg)
print(regbinary)
regBotoom = regbinary[-8::]
print(regBotoom)
result = hex('0b'+regBotoom)
print(result)
它告诉我
0b1100010110
00010110
TypeError: 'str' object cannot be interpreted as an integer
位运算符:
如果不先将int转换为字符串,就无法像您正在尝试的那样操作int
您可以通过按位and和移位获得较低和较高的8位:
也许你在寻找@jafarlihi给出的答案,其中
reg
实际上只是一个int
,你移动它的值以得到你想要的值但是,您可能还希望看到以下内容:
结果:
相关问题 更多 >
编程相关推荐