完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
假设18F2520B是字节数,则FLABIT是字节中的位。假设这段代码:编译时变成:所以字节检查变成BZ,如果条件是met则变成一个周期或两个周期。位检查变成BTFSS,如果条件满足则变成一个周期或两个周期,但如果下一个指令是2字指令,则变成三个周期。因此,总的来说,它们需要相同的时间来执行,假设下一个OP不是2-Word?之所以这样问,是因为在代码的另一部分中,将标志作为位而不是字节,通过SPI发送实际的标志会更有效。
|
|
相关推荐
19个回答
|
|
|
没有有效的C18代码。使用C18编译到14条指令的代码是使用XC8的5条指令:如果确实需要使用C18,请确保对(包括扩展指令集)进行了所有优化,并了解如何在访问库中使用RAM。
|
|
|
|
|
|
谢谢。我想我应该咬紧牙关把它送到XC8。原始代码在XC存在之前很久就开始了它的生命,并且我还有一个项目,其中我将同一代码库的一部分移植到了XC16。虽然工作量很大,但这一点要小得多。
|
|
|
|
|
|
老实说,在他的代码中“i”是anint(16位),而在您的代码中是abyte(8位),这解释了很大一部分差异。
|
|
|
|
|
|
是吗?两个CLRF指令都清除相同的地址。什么是所有运动?别理我。0xFDB是PLUWW2。
|
|
|
|
|
|
一般来说,使用比特比使用字节更有效:如果测试为零:
|
|
|
|
|
|
在SPI中发送一个包含8个标志位或8个字节作为标志的字节,我认为情况是清楚的。确定位标志的值总是需要某种类型的位掩蔽发生,而不是测试一个字节为零。因此,在代码效率方面,我不确定如何在“C”中编译,但它肯定不能多做一个额外的循环。我总是发现C中的位操作缺少一点。特别是与汇编程序移位操作相比,您可以将进位移位一点然后将进位移位回另一个字节。如果你从装配开始搬到C.,就需要一些习惯。
|
|
|
|
|
|
嗨,PIC16和PIC18在硬件上有位测试指令,还有位集和位清晰指令。即使C语言没有表达式直接强制执行这些指令,我的印象是XC8编译器在acce时相当擅长使用这些位操作指令。在字节变量中或在位字段中解析单个位。
|
|
|
|
|
|
我错过了。用“i”一个int,XC8是C18的8个指令与14个指令。几乎是一倍。并且请记住,上面所示的C18列表不是在标准C模式下运行的编译器;它禁用了整数提升。在标准C模式下,C18代码为25指令。
|
|
|
|
|
|
抱歉,但是我认为效率的问题与这个评论有关,而不是代码效率。
|
|
|
|
|
|
C18能够比这好得多,我在我的主要位搅动代码中得到几乎1:1C语句,但是……上面C18和XC8输出之间真实而明显的区别是XC8代码直接访问变量,我不知道这是由于编译的堆栈还是iF是全局变量,而C18代码是间接访问它们的,这意味着它们是函数范围内的自动变量。
|
|
|
|
|
|
代码移植到XC8并运行。这比我想象的要容易得多。我很便宜,所以我以免费模式运行,但是如果我需要额外的优势,那么我可以只订阅优化器一个月的49美元,对吗?
|
|
|
|
|
|
或免费60天的亲审。我认为你必须运行XC8安装程序再次获得它。显然,它只是在安装上提供的。
|
|
|
|
|
|
是的,我知道,但从长远来看,这不是一个可行的解决方案。我没有问题支付49美元,490美元Otoh…
|
|
|
|
|
|
我似乎记得它是每月29.95美元。&编辑:它是:http://www. McChIPdidi.Eurc/WAL/SW06021-Sub。
|
|
|
|
|
|
从长远来看,您同意了,但是您以前的帖子指出两个月的免费试用是长期的:)实际上,我有一个案例,客户要求一些新的特性,而免费HitechC则不适合已经在板上的PIC。我查看了一个完整的许可证,我认为他们报价1500美元,所以我启用了2个月的试用期,一切都很顺利。直到3个月后,当他们想要更多的新功能,审判已经到期。解决方案?安装在另一台PC上,并在那里移动开发。我想我大概有一年的旧电脑在我必须再买一台之前就在周围了。
|
|
|
|
|
|
我不知道虚拟PC会工作。!
|
|
|
|
|
|
当然,虚拟个人电脑可以用来建造,但正如我所说,我不介意花钱买好东西,但我的预算有限:)29,99甚至比49,99更好:)
|
|
|
|
|
|
你要么改进代码,要么花钱。没有别的办法了:
|
|
|
|
|
|
“我想我在买另一台电脑之前已经放了一年左右的旧电脑:”“预算有限,可是你一年要买很多电脑。咧嘴一笑:
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475 浏览 0 评论
5794 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1125浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1098浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
873浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 15:49 , Processed in 1.838991 second(s), Total 108, Slave 91 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2883