BBS.ChinaUnix.net
今日推荐    首页 | 新闻 | Linux | 博客 | 论坛 | 人才 | 培训 | 知识库 | 资料 | 读书 | 手册 | 精华 | 下载 | 沙龙 | 搜索     
  会员: 密码: 免费注册 | 忘记密码 | 会员登录 | 搜索 | 帮助 


完成相似功能而效率不同的简单C代码
首页 » 论坛 » C/C++ »  
[打印] [订阅] [收藏] [推荐给朋友] [本帖文本页]
system888net   帅哥
风云使者




UID:304970
注册:2005-8-21
最后登录: 2008-05-17
帖子:503
精华:1

可用积分:517
信誉积分:100
专家积分:10 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
1楼 发表于 2008-5-4 09:27 
intel P4,Linux+gcc3.2.2
从C的角度看如下代码的执行复杂度是基本一样的.
由于编译器的原因,实际的执行效率有不同的地方.如下代码的效率是:
code1=code2
code3<code4(编译器gcc针对int 和 unisgned int 做了不同处理)

code1:

int i,x;
x=99;
for(i=0;i<10000;i++)
{
       x=(x+1)%11;
}

code2:

unsigned int i,x;
x=99;

for(i=0;i<10000;i++)
{
       x=(x+1)%11;
}

code3:

int i,x;
x=99;

for(i=0;i<10000;i++)
{
       x=(x+1)%32;
}

code4:

unsigned int i,x;
x=99;

for(i=0;i<10000;i++)
{
       x=(x+1)%32;
}

[ 本帖最后由 system888net 于 2008-5-4 09:31 编辑 ]



您对本贴的看法:鲜花[0] 臭蛋[0]
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女
upperc
骑士



UID:156214
注册:2004-5-6
最后登录: 2008-05-06
帖子:57
精华:0

可用积分:54
信誉积分:100
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
2楼 发表于 2008-5-4 09:34 
这两个程序的含义是什么?

LZ能简单的解释一下吗?



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

燃烧生命!
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女
system888net   帅哥
风云使者




UID:304970
注册:2005-8-21
最后登录: 2008-05-17
帖子:503
精华:1

可用积分:517
信誉积分:100
专家积分:10 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
3楼 发表于 2008-5-4 09:40 


QUOTE:
原帖由 upperc 于 2008-5-4 09:34 发表
这两个程序的含义是什么?

LZ能简单的解释一下吗?

计算中经常用的取模或取余(%)运算.在图象,视频等领域用的较多. 这个代码主要是用来说明取摸运算的效率,实际中不一定这么循环.

[ 本帖最后由 system888net 于 2008-5-4 09:41 编辑 ]



您对本贴的看法:鲜花[0] 臭蛋[0]
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女
scutan   帅哥 (冬日夜雨)
精灵使
Linux newbie


CU奥运火炬传递手2008
UID:551201
注册:2007-4-13
最后登录: 2008-05-17
帖子:2889
精华:5

可用积分:2234
信誉积分:185
专家积分:237 (本版)

来自:成都
状态:...离线...

[个人空间] [短信] [博客]


顶部
4楼 发表于 2008-5-4 09:41 
>>编译器gcc针对int 和 unisgned int 做了不同处理
能讲讲怎么不同处理的吗?这觉得这是关键.



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

全力以赴每一秒!
勿在浮砂筑高台!
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女
chuhongze   帅哥
侠客




UID:518646
注册:2007-1-16
最后登录: 2008-05-17
帖子:14
精华:0

可用积分:14
信誉积分:100
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
5楼 发表于 2008-5-4 19:25 
应该是对int 符号进行了处理导致效率低了吧



您对本贴的看法:鲜花[0] 臭蛋[0]
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女
zx_wing   帅哥 (骑着猪的青蛙)
大天使
学徒



UID:499746
注册:2006-12-4
最后登录: 2008-05-17
帖子:1527
精华:3

可用积分:1682
信誉积分:100
专家积分:10 (本版)

来自:成都
状态:...保密...

[个人空间] [短信] [博客]


顶部
6楼 发表于 2008-5-4 19:33 


QUOTE:
原帖由 scutan 于 2008-5-4 09:41 发表
>>编译器gcc针对int 和 unisgned int 做了不同处理
能讲讲怎么不同处理的吗?这觉得这是关键.

同问,会有什么不同处理会导致效率降低?
这种不同的处理是增加了指令?还是使用了执行时间更长的指令?还是引入了额外的访存等等 …… 好奇



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________


C调 ---- C语言
都是最喜欢的
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女
chuhongze   帅哥
侠客




UID:518646
注册:2007-1-16
最后登录: 2008-05-17
帖子:14
精华:0

可用积分:14
信誉积分:100
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
7楼 发表于 2008-5-4 19:34 
回复 #6 zx_wing 的帖子

  同感



您对本贴的看法:鲜花[0] 臭蛋[0]
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女
mymtom
风云使者



UID:548927
注册:2007-4-8
最后登录: 2008-05-17
帖子:457
精华:0

可用积分:404
信誉积分:115
专家积分:2 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
8楼 发表于 2008-5-4 20:33 


QUOTE:
原帖由 chuhongze 于 2008-5-4 19:25 发表
应该是对int 符号进行了处理导致效率低了吧

没错!
对unsigned直接加1然后与31与就可以了! 对int要判断符号位



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________


http://www.helpsoff.com.cn
声援珊瑚虫:如果你是珊瑚虫用户,请坚决力挺声援珊瑚虫!
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女
chzCPU
骑士




UID:669782
注册:2008-2-21
最后登录: 2008-05-06
帖子:57
精华:0

可用积分:57
信誉积分:0
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
9楼 发表于 2008-5-5 14:08 


QUOTE:
原帖由 mymtom 于 2008-5-4 20:33 发表


没错!
对unsigned直接加1然后与31与就可以了! 对int要判断符号位

判断符号位就能明显降低效率?



您对本贴的看法:鲜花[0] 臭蛋[0]
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女
Sorehead   帅哥
风云使者




UID:161134
注册:2004-5-27
最后登录: 2008-05-16
帖子:650
精华:0

可用积分:780
信誉积分:100
专家积分:40 (本版)

来自:北京
状态:...离线...

[个人空间] [短信] [博客]


顶部
10楼 发表于 2008-5-5 15:57 
该死的system888net,怎么不见了?



您对本贴的看法:鲜花[0] 臭蛋[0]
IBM 集群技术资源全面接触 |赠送linux之父推荐的经典书 | CU-2008奥运之春摄影赛 | 新版开张:《IT爱车族》分享香车美女

首页 » 论坛 » C/C++ »


 


Copyright © 2001-2008 ChinaUnix.net All Rights Reserved     联系我们:

感谢所有关心和支持过ChinaUnix的朋友们    转载本站内容请注明原作者名及出处

京ICP证041476号


清除 Cookies - ChinaUnix - Archiver - WAP - TOP

Processed in 0.054680 second(s), 4 queries , Gzip enabled