打印

下面这两种写法一样不

[复制链接]
983|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
heweibig|  楼主 | 2014-5-27 20:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
TH0=(65536-50000)/256;            //定时器T0的高八位赋值
TL0=(65536-50000)%256;           //定时器T0的低八位赋值
//====================================
TH0=-(50000/256);            //定时器T0的高八位赋值
TL0=-(50000%256);           //定时器T0的低八位赋值
//===上面这两种写法一样吗???
沙发
wuhany| | 2014-5-27 20:00 | 只看该作者
TH0=(65536-50000)/256;            //定时器T0的高八位赋值
TL0=(65536-50000)%256;           //定时器T0的低八位赋值

TH0=-15536/256;            //定时器T0的高八位赋值
TL0=-15536%256;           //定时器T0的低八位赋值

使用特权

评论回复
板凳
jiahy| | 2014-5-27 20:01 | 只看该作者
由于都是常数计算,你看他们生成的hex文件是否一样就知道这两种写法是不是一样的了

使用特权

评论回复
地板
jiahy| | 2014-5-27 20:02 | 只看该作者
或者是
#if ((65536-50000)/256) == (-15536/256)
#warning same value
#endif

如果有警告则这两种写法是一样的

使用特权

评论回复
5
lizye| | 2014-5-27 20:03 | 只看该作者
建议用第一种
第二种应该
-5000/256

使用特权

评论回复
6
shimx| | 2014-5-27 20:03 | 只看该作者
用第一种比较直观
第二种应该是-5000/256

使用特权

评论回复
7
jiaxw| | 2014-5-27 20:35 | 只看该作者
你只要把程序烧写进去对比下就可以了啦

使用特权

评论回复
8
liliang9554| | 2014-5-27 20:35 | 只看该作者
不放心最好写明的代码,否则容易跟自己过不去。

使用特权

评论回复
9
zhaoxqi| | 2014-5-27 20:36 | 只看该作者
没试过,不敢说。

我只知道,-1  =  FFH         ,    -2  =   没试过,    -  其他的,没试过,觉得没意义。

初学者没必要在这样的地方钻牛角,没意义。

使用特权

评论回复
10
jiajs| | 2014-5-27 20:37 | 只看该作者
也不是什么难的问题,试试就知道了,才学的时候可以到处试试,实在不行再请教。因为自己整出来的**深刻,在这儿问出来的是解决这次的问题了,下次碰到说不定还是纠结。不花多少时间的事,很有好处的……

使用特权

评论回复
11
huangchui| | 2014-5-27 20:38 | 只看该作者
c语言考试的常见问题,别折磨自己了,楼主,实现功能是正道,格式写的再华丽没用的

使用特权

评论回复
12
zhenykun| | 2014-5-27 20:38 | 只看该作者
应该是12MHZ

使用特权

评论回复
13
heweibig|  楼主 | 2014-5-27 20:39 | 只看该作者
哦,知道了

使用特权

评论回复
14
heweibig|  楼主 | 2014-5-27 20:39 | 只看该作者
那就结贴了

使用特权

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

本版积分规则

869

主题

13089

帖子

7

粉丝