【发布时间】:2021-01-19 11:02:19
【问题描述】:
我有一个系统 verilog 函数,我正在尝试将其转换为 python。 该函数获取一个二进制文件并读入并执行一些 ECC 函数来检查输入是否有效。
function int local_ecc_function(int word_in) ;
int ecc;
ecc[0] = word_in[0 ]^ word_in[1 ]^ word_in[3 ]^ word_in[4 ]^ word_in[6 ]^ word_in[8 ]^ word_in[10 ]^ word_in[11 ]^ word_in[13 ]^ word_in[15 ]^ word_in[17 ]^ word_in[19 ]^ word_in[21 ]^ word_in[23 ]^ word_in[25 ]^ word_in[26 ]^ word_in[28 ]^ word_in[30];
...
我的 python 读取文件并将其转换为整数列表:
bytes_arr = f.read(4)
list_temp = []
int_temp = int.from_bytes(bytes_arr, byteorder='big')
while bytes_arr:
bytes_arr = f.read(4)
int_temp = int.from_bytes(bytes_arr, byteorder='big')
list_temp.append(int_temp)
如何将 int 转换为 32 位列表,以便执行 ECC 功能?我正在使用 python 3.8
【问题讨论】:
-
1.该函数似乎需要一个 32 位的 int,而不是列表。 2. 在您的代码中,您拥有的是一个列表,我猜您希望将其作为 int 传递给您的函数。 “我如何将 int 转换为 32 位列表以便执行 ECC 函数?”有点困惑? 您能否在您的循环之后发布
list_temp的样子,以便我们帮助转换那个。 -
@aneroid 我无法发布我的列表,目标是遍历我创建的整数列表并将它们转换为位。每个整数。
标签: python