def dec2binAry(x, bits): mask = np.expand_dims(2**np.arange(bits-1,-1,-1),1).T return (np.bitwise_and(np.expand_dims(x,1), mask)!=0).astype(int)
时间: 2023-10-09 13:11:23 浏览: 100
binary2txt.rar_binary2t_binary2text_binary2txt_site:www.pudn.com
这是一个将十进制数转换为二进制数组的函数。它使用了NumPy库中的函数和操作来执行位运算。
参数x是要转换的十进制数,bits表示二进制数组的位数。
函数中的mask是一个二维数组,用于将十进制数的每一位与对应的二进制位进行比较。np.expand_dims函数用于扩展x和mask的维度,使其能够进行位运算。np.arange函数用于生成一个从bits-1到0的序列,作为mask的指数。np.bitwise_and函数执行按位与运算,np.expand_dims(x,1)将x扩展为一个列向量,与mask进行按位与运算得到一个二维数组。最后,通过比较是否等于0,将布尔值转换为整数数组。
该函数返回一个二进制数组,表示给定十进制数的二进制表示形式。
阅读全文