发新帖我要提问
12
返回列表
打印

懒惰的确是一种美德。。。。

[复制链接]
楼主: XIANSir
手机看帖
扫描二维码
随时随地手机跟帖
21
zq_mcu| | 2011-4-11 09:17 | 只看该作者 回帖奖励 |倒序浏览
我赞同楼主的做法,因为经常用的东西我们容易记住,不需要做什么注释,但是半年,1年后呢?

要是注释更加的精炼就更好了。

使用特权

评论回复
22
kinsno| | 2011-4-11 09:20 | 只看该作者
反正我是记不住的,每次用一芯片,都要提前一天或半天来研究寄存器。老纠结了。

使用特权

评论回复
23
XIANSir|  楼主 | 2011-4-11 09:44 | 只看该作者
记住这个更难
ayb_ice 发表于 2011-4-11 08:26


前辈说的记住哪个更难啊???我的代码里好像没有什么要记得东西啊——只是写这个东西比较麻烦,但也只是写一次却终身受益

使用特权

评论回复
24
ayb_ice| | 2011-4-11 10:31 | 只看该作者
标准51的SFR就不要搞这些了,虽然也不能完全记住,但一般也只是初始化的时候用一下,一个项目的重点往往不在这里
,而是算法...

使用特权

评论回复
25
救火车| | 2011-4-11 15:13 | 只看该作者
我个人支持楼主。

使用特权

评论回复
26
xlsbz| | 2011-4-11 15:22 | 只看该作者

34

本帖最后由 xlsbz 于 2011-4-11 15:25 编辑

25# 救火车

使用特权

评论回复
27
xlsbz| | 2011-4-11 15:39 | 只看该作者
1# XIANSir

你干脆弄个VB啥的 做个配置软件得了:)

使用特权

评论回复
28
XIANSir|  楼主 | 2011-4-11 16:28 | 只看该作者
27# xlsbz
那又何必,网上早就有这种软件了啊!!
但是我不喜欢那种软件,因为它产生的代码像下面这样子:
PCON = 0x80;

这样的代码肯定是对的,执行没问题。
可问题是,你只知道这行代码把PCON的最高位置1,其他位清零,可是你从这行代码中能够知道PCON的最高一位是干什么的么???我觉得这样不好!

更复杂的例子:
T2CON = 0x35;
你能立马知道这行代码都干了些什么事情吗???就算你现在知道,那半年不用51做项目,你到时重新看这行代码能够做到不查手册就知道这行代码干了些什么吗???

使用特权

评论回复
29
wsb168| | 2011-4-14 23:57 | 只看该作者
看不明白

使用特权

评论回复
30
dong_abc| | 2011-4-15 00:47 | 只看该作者
严重的告诉你,没神马必要,工作重心不在那几个寄存器。关键在于程序整体构架是实现算法。

使用特权

评论回复
31
XIANSir|  楼主 | 2011-4-16 16:10 | 只看该作者
30# dong_abc
对啊!所以我才要一劳永逸呀!!这样以后思考算法的时候就不会被繁复的查手册打断思路了啊!!!:D

使用特权

评论回复
32
Simon21ic| | 2011-4-16 22:59 | 只看该作者
代码不够规范。
#define B2H0_8(b0,b1,b2,b3,b4,b5,b6,b7) (((b0)<<0) + ((b1)<<1) + ((b2)<<2) + ((b3)<<3) + ((b4)<<4) + ((b5)<<5) + ((b6)<<6) + ((b7)<<7))
在偶们这里,要这样写代码才合格

使用特权

评论回复
33
JLINGON| | 2011-4-17 08:06 | 只看该作者
lz真有想法~~~顶

使用特权

评论回复
34
XIANSir|  楼主 | 2011-4-17 09:50 | 只看该作者
32# Simon21ic
请问:
((b3)<<3)和(b3<<3)有什么区别吗???

使用特权

评论回复
35
xingaiking| | 2011-4-17 11:40 | 只看该作者
学习了~~~顶下

使用特权

评论回复
36
wuxin999| | 2011-4-28 15:30 | 只看该作者
学习一下

使用特权

评论回复
37
198825| | 2011-4-28 18:54 | 只看该作者
很不错的东西

使用特权

评论回复
38
hsw_21| | 2011-4-28 21:29 | 只看该作者
颁发“21IC年度最佳创意和贡献奖”

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则