68

帖子

0

TA的资源

一粒金砂(初级)

141
 
我们学校将计算机科学与技术专业分为控制、数据库、软件、网络四个方向,我是学控制的,据说我们会学习单片机,请问版主知道计算机控制到底都学习什么吗?我如果想在毕业后找到一份好工作,我应该掌握哪些知识呢?希望版主给我点建议,谢谢啦!
此帖出自编程基础论坛
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

142
 
■■■◣ ◢■■◣ ◢■■◣ ◢■■◣
   ■ ■  ■ ■  ■ ■  ■
◢■■◤ ■  ■ ■  ■ ■■■■
■    ■  ■ ■  ■    ■
◥■■■ ◥■■◤ ◥■■◤ ◥■■◤
 ★☆★  ★☆★  ★☆★  ★☆★
★ 逢 ★★ 赌 ★★ 必 ★★ 赢 ★
 ★☆★  ★☆★  ★☆★  ★☆★
各位深受老/虎/机/其害的朋友们,你们是不是输了/钱想翻本。可是却越/赌/越/输/越多呢,结果离翻本越来越远。想尽一切办法却也没办法,如果你有以上烦恼请加我.我来帮你摆脱困境,不再被老/虎/机/搞得变成穷光蛋! QQ245455939
本公司专门生产!上/分/器!,老/虎/机定/位/器!.,!老/虎/机/破/解/上/分/器/,!退/币/器/,老/虎/机/遥/控/器/,定/位/器奔/驰/宝/马/!轮/盘/水果/!斗/地/主/破/解/,!扑/克,麻/将!,!牌/九/透/视/!.识/牌/器!.透/视/眼/镜!.药水! QQ245455939
等等...!作/弊/器!,让你打/暴/老/虎/机!..` QQ245455939
详情 QQ245455939货到付款 邮政代收.. QQ245455939
视频免费教你破/解让你更容易上手100%成功.. 全国联保 如果有兴趣可以 q交流交流心得!        
【信】
   —┼-良心道德,铸就诚信┼— ◥★QQ: 245455939★◢
   —┼-诚信交易.一诺千金┼— ◥★QQ: 245455939★◢
   —┼-信用是金,财富是银┼—
   —┼-交易是小.做人是大┼—
联系方式:
赌机破解提供免费技术,仅供参考。
详情咨询:QQ: 245455939  TEL:13859918414    【信】
此帖出自编程基础论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

143
 
■■■◣ ◢■■◣ ◢■■◣ ◢■■◣
   ■ ■  ■ ■  ■ ■  ■
◢■■◤ ■  ■ ■  ■ ■■■■
■    ■  ■ ■  ■    ■
◥■■■ ◥■■◤ ◥■■◤ ◥■■◤
 ★☆★  ★☆★  ★☆★  ★☆★
★ 逢 ★★ 赌 ★★ 必 ★★ 赢 ★
 ★☆★  ★☆★  ★☆★  ★☆★
各位深受老/虎/机/其害的朋友们,你们是不是输了/钱想翻本。可是却越/赌/越/输/越多呢,结果离翻本越来越远。想尽一切办法却也没办法,如果你有以上烦恼请加我.我来帮你摆脱困境,不再被老/虎/机/搞得变成穷光蛋! QQ245455939
本公司专门生产!上/分/器!,老/虎/机定/位/器!.,!老/虎/机/破/解/上/分/器/,!退/币/器/,老/虎/机/遥/控/器/,定/位/器奔/驰/宝/马/!轮/盘/水果/!斗/地/主/破/解/,!扑/克,麻/将!,!牌/九/透/视/!.识/牌/器!.透/视/眼/镜!.药水! QQ245455939
等等...!作/弊/器!,让你打/暴/老/虎/机!..` QQ245455939
详情 QQ245455939货到付款 邮政代收.. QQ245455939
视频免费教你破/解让你更容易上手100%成功.. 全国联保 如果有兴趣可以 q交流交流心得!        
【信】
   —┼-良心道德,铸就诚信┼— ◥★QQ: 245455939★◢
   —┼-诚信交易.一诺千金┼— ◥★QQ: 245455939★◢
   —┼-信用是金,财富是银┼—
   —┼-交易是小.做人是大┼—
联系方式:
赌机破解提供免费技术,仅供参考。
详情咨询:QQ: 245455939  TEL:13859918414    【信】
此帖出自编程基础论坛
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

144
 
是要学习严谨的态度。
此帖出自编程基础论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

145
 
主要考虑的是速度和空间
此帖出自编程基础论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

146
 
搂主在争论观点时偏执了点,其出发点是好的。
此帖出自编程基础论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

147
 
学习了,顶.
此帖出自编程基础论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

148
 
真的是这样的吗?
此帖出自编程基础论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

149
 
引用 75 楼 jiqiang01234 的回复:
引用 72 楼 lbing7 的回复:

你们的程序都没有注释?

呵呵

我个人这看来,注释也算代码

而且尽可能要求能在源文件里能表达的就不去牵扯别的东西


一个良好的代码是一定得有注释的,无论是给自己看还是给别人看。只是我不知道lbing7所说的“四五万行”代码里有多少行是注释。如果在这里面真正的代码占了不到1万行,而注释就三四万行,那么这其实又说明了另一个问题,那就是:如果注释的数量已远远大于了实际代码的数量,这往往预示着这些代码需要优化了,用大量的注释来注解糟糕的代码是后患无穷的。因为,良好的的代码有自说明性,无需太多的注释来注解。


这个不太赞成lz,因为很多源文件中,占很大的部分确实是注释啊
此帖出自编程基础论坛
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

150
 
乘除在51中能不用尽量不用。
此帖出自编程基础论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

151
 
引用 134 楼 layject 的回复:
引用 27 楼 jiqiang01234 的回复:
其实,还有一个很重要的问题忘了提及。那就是------优化。一个逻辑性很差的程序往往优化也不会高到哪里去。也就是说,一个较差的程序用模块化等思想再加上优化以后,不见得就比以前的rom占用多、ram占用大、速度慢。举几个例子吧:
1、对数组清零,我们可以写一个循环,也可以用memset()函数,但是性能差异可就差多了,无论从ram、rom和运行速度都是没法比的。

2、我见过这样的代码:

假设a,b都是unsigned char类型
C/C++ codeif(a>1&& a <=10)
{
? ? b=0;
}elseif(a>10&& a <=20)
{
? ? b=1;
}elseif(a>20&& a <=30)
{
? ? b=2;
}elseif(...)//N多个分支来判断? .
? .
? .
这样的代码看着着实不爽,可以优化吗?当然可以,优化如下:
C/C++ code#define RANGE_TABLE_SIZE 10//假设是十个判断分支
typedef unsignedchar BYTE;


typedefstruct tagRANGE
{
? ? BYTE nLower;
? ? BYTE nUpper;
}RANGE;

codeconst RANGE g_RangeTable[RANGE_TABLE_SIZE]=
{
{1,10},
{10,20},
{20,30},
...
};//下面为判断过程BYTE i=0;for(i=0; i < RANGE_TABLE_SIZE; i++)
{if(a> RangeTable.nLower&& a <= RangeTable. nUpper)
? ? {
? ? ? ? b= i;
? ? }
}
我实际测试了一下,改版之前足足用了147个字节,而改版后的只是70个字节。相差竟然有一倍之多。改变前看似铺天盖地的代码,其实是非常简单的逻辑。用了表格驱动法后,无论从代码量、可读性和可扩展性来说无疑提高了非常多。

这个代码可不可以这样优化?
b=(a-1)/10;




当然可以了,我确实没想到这个方法。我那个解法的适应面稍微广一些,不仅仅是10的整数倍,几乎可以是任意整数。
此帖出自编程基础论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

152
 
从技术上说,很正确
从现实上说,不一定
毕竟打工的人也不过是完成任务拿份工资
这个项目能卖到钱就行,老板们说
此帖出自编程基础论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

153
 
引用 130 楼 t1397018 的回复:
不赞同lz,我只是一名菜鸟,但是我也严格遵守代码的规范,但是写单片机的时候,发现很多规范到单片机的编译器上总是莫名其妙出问题,拿参数来说吧,似乎有的编译器根本就不支持传参,只能用全局变量来代替了


举例可以吗?我感觉编译器不会这么差劲的。至少我从来没有碰到过
此帖出自编程基础论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

154
 
引用 138 楼 knate 的回复:
重要的是全局变量的使用是可预知的(程序运行前已经分配好),使用传递参数那是不可预知的.在可怜的堆栈容量下,天知道堆栈在那么多参数传递时会出什么问题.(试过BT一下传递5个参数,几乎耗了我2组寄存器,呵呵,不敢想象以后如果反复调用的,平时我传递的寥寥可数--平台8位)


如果全局变量只是自己一个人来用完全可以说“可预知”,因为它的所有行为自己都清楚。如果多人配合的话(我做过这样的项目),那可就麻烦大了,因为别人不清楚全局变量究竟有多少函数对它进行了修改。如果要想搞清楚全局变量的所有线索是非常麻烦的。

如果函数的参数多了势必会加重寄存器的占用,不过不要忘了c语言里可是有结构体的,传一个结构体指针进去可并不费事。
此帖出自编程基础论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

155
 

支持楼主,不过楼主的代码还可以写的更漂亮。

另,跟一帮小破孩没什么好争论的,软件工程,编码风格,流程这些东西,让只写过万把行代码的下破孩去理解太困难了。等他们做些大点的工程再来理解这些吧。就像人家欧美老早就玩OO,我们还在用面向过程语言也感觉良好一样,没办法的,层次不同。
此帖出自编程基础论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

156
 
真的不错 看了你的代码 我还可以有进步的空间啊 我已经加你为好友啊 以后多交流啊 互相进步啊 嗯....一起钻研
此帖出自编程基础论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

157
 
引用 128 楼 ubiquitious 的回复:

哈哈,用google搜不到的东西你就认为不存在吗?
在你眼中google是万能的造物主吗?
你不会也是那种离了google的copy & paste就不能写代码不能生存的所谓程序员吧。

这个提法不是我的创造。
如果你真正搞过嵌入式的东西,
或者看过嵌入式相关的好书你就会知道这到底意味着什么。
你看过的东西还是太少了,只追求语言指令级的技巧已经让你误入歧途了。
遗憾。

“哈哈,用google搜不到的东西你就认为不存在吗?在你眼中google是万能的造物主吗?”
google确实不是万能,但问题是如果连google中都很难找到的东西(除去非法信息或机密信息),你认为它的普及面很广吗?这不恰恰说明了你说的“深嵌入”和“浅嵌入”的概念还没有被广泛使用,没有被广泛的认可?

“你不会也是那种离了google的copy & paste就不能写代码不能生存的所谓程序员吧。”
我确实离不了google,里面的知识太丰富了。但copy & paste代码的程序员具体指谁还真不好说。

“如果你真正搞过嵌入式的东西,
或者看过嵌入式相关的好书你就会知道这到底意味着什么。
你看过的东西还是太少了,只追求语言指令级的技巧已经让你误入歧途了。
遗憾。”

我确实关于嵌入式了解很少,我也从来不标榜我懂多少嵌入式。但我谈及的主题和我本身是否对广义的嵌入式有精深的造诣关系不是很大。我的主题讨论面比较窄,仅仅是单片机c程序如何写。

“你看过的东西还是太少了,只追求语言指令级的技巧已经让你误入歧途了。遗憾。”
如果模块化思想、优化思想、重用性等思想都算是所谓的“语言指令级的技巧”我只能说你没写过大程序,遗憾。
此帖出自编程基础论坛
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

158
 
1 c++看c会发现一些问题。但c是前辈,后浪推前浪可以理解
2 专攻或者偏软的看软硬兼修的软肋会发现一些问题的。毕竟人的精力有限
3 假设一个软硬兼修的资深全才发现的一些问题给出的经验会不会更有说服力呢
4 同意126楼观点,源码的注释是无价的
5 LZ若以更谦逊的姿态来跟大家探讨会不会使包括LZ自己的更多人受益呢
此帖出自编程基础论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

159
 
讨论得不错,学习了
此帖出自编程基础论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

160
 
楼主分析得好啊,写单片机应该跟写VC程序一样,不能老是用汇编的眼光去看问题
此帖出自编程基础论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

猜你喜欢
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
有奖直播:当AI遇见仿真,会有什么样的电子行业革新之路?
首场直播:Simcenter AI 赋能电子行业研发创新
直播时间:04月15日14:00-14:50

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网 6

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表