【发布时间】:2014-02-13 19:10:07
【问题描述】:
我正在使用 python,需要找出以下内容来完成转换器, 如何在 python 中将二进制/十进制/十六进制/八进制转换为二进制编码十进制 (BCD)
【问题讨论】:
我正在使用 python,需要找出以下内容来完成转换器, 如何在 python 中将二进制/十进制/十六进制/八进制转换为二进制编码十进制 (BCD)
【问题讨论】:
BCD 实际上非常简单。不过,这取决于您想要的最终格式。
解压:
def to_bcd(number):
return [ord(x)-ord('0') for x in '%d'%number]
packed 工作量稍大:
def to_packed_bcd(number):
numtest = '%d'%number
if len(numtest)%2 == 1:
numtest = '0%s'%numtest
return [(ord(numtest[x])-ord('0'))<<4 | (ord(numtest[x+1])-ord('0')) for x in range(0, len(numtest), 2)]
x
【讨论】: