[技术求助] C语言 变量位测试

[复制链接]
1422|2
 楼主| starandstarand 发表于 2013-12-5 09:58 | 显示全部楼层 |阅读模式
本帖最后由 starandstarand 于 2013-12-5 10:28 编辑

    本人在C28X平台编程,在汇编语言中,可对某一变量直接位测试,形如:
TSET @ABC,#1

    而在C中,需要先设置一中间变量,再判断,形如:
i=*ABC;

i&=0x02;

if(i==2){};

    显然C语句效率较低,当然还可以把*ABC定义成结构体,但这也不够方便,大神们还有更好的办法吗?
airwill 发表于 2013-12-5 10:37 | 显示全部楼层
为什么不写成
if (*ABC &2) {}
或许编译器会生成
TSET @ABC,#1
这样的执行码

评分

参与人数 1威望 +1 收起 理由
starandstarand + 1 很给力!

查看全部评分

 楼主| starandstarand 发表于 2013-12-6 09:53 | 显示全部楼层

确实,编译器产生了高效的语句。谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

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

本版积分规则

3

主题

21

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部