gpt4 book ai didi

matlab - Bitget 处理大输入?

转载 作者:行者123 更新时间:2023-12-04 04:32:51 24 4
gpt4 key购买 nike

默认类型 is uint64但是下面显然需要更大的支持,您可以在其中看到数字 536870915 (100000000000000000000000000011 二进制,30 位长度)不支持上述 bitget 命令。所以

How to get bitget command working with large inputs like the below?



输入
hhhh=sparse([],[],[],2^40+1,1); 
hhhh(536870915)=1;
bitget(str2num(dec2bin(find(hhhh)-1)),2,'uint64')

输出
Error using bitget
Double inputs must have integer values in the range of ASSUMEDTYPE.

最佳答案

您传递了 dec2bin(find(hhhh)-1) 的输出至 str2num .这直接将 1 和 0 的字符串转换为 double :9.999999999999999e+28 .我猜这不是你想要的。

如果您只是想获取 536870915 的第二位,为什么不使用:

bitget(find(hhhh)-1,2,'uint64')

另一方面,我认为您也可以使用它(可能更慢,但如果您已经转换为字符串表示,它可能会与您的其余代码一起使用):
b = dec2bin(find(hhhh)-1);
str2double(b(end-1))

看起来您正在尝试将两种方法结合起来。

关于matlab - Bitget 处理大输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20304216/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com