OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7305|回复: 6

脱离就绪表的函数中为什么只对OSRdyGrp清零,不对OSRdyTbl[prio>>3]清零呢?

[复制链接]

1

主题

2

帖子

0

精华

新手入门

积分
26
金钱
26
注册时间
2013-7-22
在线时间
0 小时
发表于 2014-8-17 11:41:59 | 显示全部楼层 |阅读模式
5金钱


求教:本人在看uc的代码时,发现脱离就绪表的代码中只对OSRdyGrp相应位清零,不对OSRdyTbl[prio>>3]清零,是为什么呢?第一张图中说当OSRdyTbl[prio>>3]的全部位都为0时就将OSRdyGrp相应位清零,那么直接if(OSRdyTbl[prio>>3]==0)不就行了吗?为什么呢?谢谢了

最佳答案

查看完整内容[请看2#楼]

楼主没有看仔细啊!这段代码其实两件事情都做了,我把这段源码分解下就很清楚了 [mw_shl_code=c,true]if((OSRdyTbl &= ~OSMapTbl) == 0) /*以上这句话先清除对应的位,然后再判断OSRdyTbl>>3的值*/ /*分解成更清楚的两句话就如下*/ OSRdyTbl =OSRdyTbl &(~OSMapTbl); if(OSRdyTbl == 0) [/mw_shl_code] 清楚了吧
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2014-7-1
在线时间
0 小时
发表于 2014-8-17 11:42:00 | 显示全部楼层
楼主没有看仔细啊!这段代码其实两件事情都做了,我把这段源码分解下就很清楚了
[mw_shl_code=c,true]if((OSRdyTbl[prio >> 3] &= ~OSMapTbl[prio & 0x07]) == 0) /*以上这句话先清除对应的位,然后再判断OSRdyTbl[prio]>>3的值*/ /*分解成更清楚的两句话就如下*/ OSRdyTbl[prio >> 3] =OSRdyTbl[prio >> 3] &(~OSMapTbl[prio & 0x07]); if(OSRdyTbl[prio >> 3] == 0) [/mw_shl_code]
清楚了吧
回复

使用道具 举报

558

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
164897
金钱
164897
注册时间
2010-12-1
在线时间
2100 小时
发表于 2014-8-17 22:00:26 | 显示全部楼层
帮顶....
回复

使用道具 举报

1

主题

2

帖子

0

精华

新手入门

积分
26
金钱
26
注册时间
2013-7-22
在线时间
0 小时
 楼主| 发表于 2014-9-12 09:35:42 | 显示全部楼层
回复【3楼】taiwentaotwt:
---------------------------------
哦,明白了明白了,谢谢!
回复

使用道具 举报

10

主题

75

帖子

0

精华

初级会员

Rank: 2

积分
135
金钱
135
注册时间
2015-5-22
在线时间
0 小时
发表于 2015-6-14 21:07:48 | 显示全部楼层
bangdingdingdingdingding
我建了一个战舰stm32交流群:320350722 新手请教老手,老手大显身手! stm32交流群:320350722 stm32交流群:320350722
回复

使用道具 举报

0

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
77
金钱
77
注册时间
2013-1-26
在线时间
11 小时
发表于 2020-5-23 10:16:56 | 显示全部楼层
2.91版的改了,没有这样的代码了,变成了小白都看得懂的代码了。而且,TCB的信息冗余也多了,自带就绪表行数和列数,不需要再查表或运算了硬件够了就是奢侈
回复

使用道具 举报

0

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
77
金钱
77
注册时间
2013-1-26
在线时间
11 小时
发表于 2020-5-23 10:19:04 | 显示全部楼层
roger 发表于 2020-5-23 10:16
2.91版的改了,没有这样的代码了,变成了小白都看得懂的代码了。而且,TCB的信息冗余也多了,自带就绪表行 ...

还有,任哲的书4版第75页,用‘-’表示取反‘~’导致我还想了老半天,发现‘-’操作的是清零比本位更低的几位……还在想“大佬是不是有什么深意”然后百度了一下………………
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-6-10 07:29

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表