您的位置:首页 > 其它

始终记住自己是程序猿!!!

2016-01-28 11:40 211 查看
这篇文章献给自己的职业——程序猿 By Coder的不平庸

今天这篇文章直奔主题,今下午自己在做关于char这个类型深入理解的时候,查到资料,char在java里面是16位,自己思维就到了2的16次方是多少? 随性用cmd输入calc打开计算器,选择程序猿型(事实上程序猿对这个幂的计算式应该比較敏感的,自己还要不断学习和领悟),然后始终找不到幂运算的符号,我记得曾经用过这个运算啊,怎么今儿找不到了。在计算器点了半天后,突然“呵呵”一笑,我忘记了我自己的职业——程序猿。

恩。对,我是程序猿,这么小小的一个运算问题自己随便写一个循环就能算出结果。

于是打开Eclipse。写了一个for循环。算出了结果。

。。再得到结果的时候我突然想这是不是不太高效? 是不是能够用其它方法来把它算出来? 于是大家也知道,移位操作能够解决。于是输出2<<15就能得到结果。得到结果的我并不满足。我想这两个操作究竟谁的速度更快。做了一个測试。毋庸置疑,移位操作的更快,然后我脑海又想起大学里面学的课程《计算机组成原理》,《计算机操作系统》等等(尽管没认真听 - -!)【看来大学里面学的课程不一定全都是无用的。这一点一定要坚信!,相信自己所学的。】,于是得到了以下的思维构图:



我记得曾经做过一个測试,把移位和循环来比,看哪个速度更快,有时候循环更快,有时候移位快。从理论上。必须是移位更快啊!!

!

于是在网上找相关问题。看到一个人回答的问题:假设目标系统有乘法指令,硬件的乘法比自己移位实现乘法要快。假设目标系统没有乘法指令,编译器会用移位实现乘法,这通常比自己实现的乘法要快;
恩。对,编译器会优化,你想看到效果不一定看的到。


我想这或许是程序猿这个职业所给我带来的一些思维上的改变,我想假设以后遇到类似的问题,我也应该用这样的求知欲望,多从网上找到一些细节东西。来丰富论证。这样收获的很多其它吧。

所以:始终记得自己是程序猿【这是多么崇高的词啊!





可不是贬义词的 :)】 。体会编程的乐趣。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: