打印
[国产单片机]

敬请汇编达人,帮我把这段C程序翻译成汇编,指令够精简

[复制链接]
2327|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huifly520|  楼主 | 2009-3-30 12:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
由于汇编不熟,敬请汇编达人帮忙,翻译成汇编目的是减少指令运行时间
这个程序应用在8位单片机上
CCAP3H和CCAP3L是个8位的寄存器
RecCounter ,RecCounterPre ,DataInterval 是16位的unsigned int
RecCounter = CCAP3H;
RecCounter = (RecCounter<<8)+CCAP3L;
DataInterval = RecCounter - RecCounterPre;
RecCounterPre = RecCounter;

谢谢!

相关帖子

沙发
McuPlayer| | 2009-3-30 20:45 | 只看该作者

最基本的东西,你都没有说

你用的啥芯片啊?各家的片子指令集都不一样

另外,C语言编译出来的代码,未必就比汇编的效率低。
对很多新手来说,甚至C语言写的比汇编更有效,因为C可以优化。

使用特权

评论回复
板凳
lyjian| | 2009-3-31 13:15 | 只看该作者

没什么意义

就这么简单的指令C和汇编没什么差别

使用特权

评论回复
地板
tonywei| | 2009-6-26 10:50 | 只看该作者

用Keil-C可以输出汇编

在option中listing里钩上assembly code,编译后就有汇编文件输出

使用特权

评论回复
5
xxdcq| | 2010-5-19 12:10 | 只看该作者
如果是51的
你提供hex文件我帮你反

使用特权

评论回复
6
xpt2| | 2010-8-10 12:11 | 只看该作者
mov a,CCAP3H
        mov RecCounter,a
        mov r0,#08h
ssa: rl a
       djnz r0,ssa
       add a,CCAP3L
       mov RecCounter,a
........
没时间了,你自己做吧

使用特权

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

本版积分规则

7

主题

12

帖子

0

粉丝