matlab里为何double型运算比int64型运算快很多代码1:tica = ones(1000,1000);b = 2*ones(1000,1000);for kkkkkk=1:100 c = a.*b;endtoc;tica = ones(1000,1000,'uint64');b = 2*ones(1000,1000,'uint64');for kkkkkk=1:100 c = a.*b;endtoc结

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/23 09:17:58
matlab里为何double型运算比int64型运算快很多代码1:tica=ones(1000,1000);b=2*ones(1000,1000);forkkkkkk=1:100c=a.*b;end

matlab里为何double型运算比int64型运算快很多代码1:tica = ones(1000,1000);b = 2*ones(1000,1000);for kkkkkk=1:100 c = a.*b;endtoc;tica = ones(1000,1000,'uint64');b = 2*ones(1000,1000,'uint64');for kkkkkk=1:100 c = a.*b;endtoc结
matlab里为何double型运算比int64型运算快很多
代码1:
tic
a = ones(1000,1000);b = 2*ones(1000,1000);
for kkkkkk=1:100
c = a.*b;
end
toc;tic
a = ones(1000,1000,'uint64');b = 2*ones(1000,1000,'uint64');
for kkkkkk=1:100
c = a.*b;
end
toc
结果是:
Elapsed time is 0.517186 seconds.
Elapsed time is 1.052175 seconds.
代码2:
tic
for kkkkkk=1:1000000
a = 1234*1e7;
end
toc;tic
a0 = uint64(1234);
for kkkkkk=1:1000000
a = a0*1e7;
end
toc
结果是:
Elapsed time is 0.004122 seconds.
Elapsed time is 5.845563 seconds.
这是怎么回事?

matlab里为何double型运算比int64型运算快很多代码1:tica = ones(1000,1000);b = 2*ones(1000,1000);for kkkkkk=1:100 c = a.*b;endtoc;tica = ones(1000,1000,'uint64');b = 2*ones(1000,1000,'uint64');for kkkkkk=1:100 c = a.*b;endtoc结
我也不知道,不过猜想是不是因为 int64 在存储数据上花费了太多的时间?

matlab里为何double型运算比int64型运算快很多代码1:tica = ones(1000,1000);b = 2*ones(1000,1000);for kkkkkk=1:100 c = a.*b;endtoc;tica = ones(1000,1000,'uint64');b = 2*ones(1000,1000,'uint64');for kkkkkk=1:100 c = a.*b;endtoc结 matlab double(I)是什么意思 I是图像 如何提取Dictionaryd1中每个double型元素进行与一个double型数组一一对应相运算比如double[9] increase,要increase[i]与d1[i]中每个对应的double值相运算 n=(int)sqrt((double)i)中为什么要把i转变成double型?是不是math.h里的函数都要用double型?为什么呢? C语言数据类型有效数字问题1.长整型的有效位数是否比double多?如果多,那为什么长整型与double型运算时要一律转换成double?2.课本里有如下描述----有如下表达式f=2.45678*4523.65(f为float).系统先 matlab中,同样处理整数,int8类型的储存方式会比double的储存方式运算快吗?我知道,如果用Int8储存的话,会节约储存空间,但运算速度会有明显提升吗? matlab中涉及复数运算是不是需要把数据类型转换为double类型 matlab中函数sum的问题?I=double(imread(img_name))/255;mI=double(imread(scribs_img_name))/255;consts_map=sum(abs(I-mI),3)>0.001;其中I,mI均为3维数组,consts_map为一维数组,为何经过sum后,3维的(I-mI)变为了一维的consts_map? matlab 中如何将unit8转成double型 matlab 符号运算 提取复数实部虚部syms a b>> f=a+b*i>> real(f) ans = real(a + b i)为何答案不是a? Matlab里的x(i : double fun(int i,double x,double “double face double u I don’t wanna crazy boy”什么意思? 是《double face》里的一句歌词 matlab如何定义double变量 如何写出比 MATLAB 更快的矩阵运算程序 如何写出比 MATLAB 更快的矩阵运算程序 如何写出比 MATLAB 更快的矩阵运算程序? 如何写出比 MATLAB 更快的矩阵运算程序