[ZLG-MCU] 请教900系列MCU执行一条8位的乘法要多少时钟周期?

[复制链接]
 楼主| wishhealth 发表于 2008-1-27 17:13 | 显示全部楼层 |阅读模式
请教ZLGMCU,900系列MCU执行一条8位的乘法要多少时钟周期?在ROM中读取1组16位的数据要多少时钟周期?<br />谢谢!
zlgmcu 发表于 2008-1-28 08:39 | 显示全部楼层

只需8周期,而普通80C51是48周期

  
zlgmcu 发表于 2008-1-28 09:06 | 显示全部楼层

从ROM表连续读取2字节情况较复杂,不好说

<big><br />从ROM表读1个字节所需时间仅仅是MOVC指令的执行时间。<br /><br />而ROM表连续读2字节,不只是两条MOVC,还有可能插入一条INC&nbsp;DPTR指令,并且ACC也可能要更新,还要保存数据。因此执行时间可能不确定。<br /><br />例如:<br /><br />(DPTR已指向数据地址,A=0)<br />MOVC&nbsp;&nbsp;A,@A+DPTR<br />MOV&nbsp;&nbsp;&nbsp;R0,A<br />CLR&nbsp;&nbsp;&nbsp;A<br />INC&nbsp;&nbsp;&nbsp;DPTR<br />MOVC&nbsp;&nbsp;A,@A+DPTR<br />(结果在R0:A当中)<br /><br />另一种(最快,只需3周期):<br />(DPTR已指向数据地址,A=0,R0=1)<br />MOVC&nbsp;&nbsp;A,@A+DPTR<br />XCH&nbsp;&nbsp;&nbsp;A,R0<br />MOVC&nbsp;&nbsp;A,@A+DPTR<br />(结果在R0:A当中)<br /></big>
xwj 发表于 2008-1-28 09:23 | 显示全部楼层

zlgmcu,你不觉得你3楼的程序又严重BUG吗???

以前初学时,就被zlg的程序误导过,此后再不看zlg的程序了...
zlgmcu 发表于 2008-1-28 09:23 | 显示全部楼层

已修正

  
zlgmcu 发表于 2008-1-28 14:51 | 显示全部楼层

re 楼主

告诉楼主一个非常简单的方法.<br /><br />楼主可以写一个简单的程序,<br />然后在keil的软件仿真模式下单步调试,<br />在左边的project&nbsp;workspace窗口中的&nbsp;[reg]子窗口中,<br />可以清晰地看见每条指令运行所消耗的&nbsp;机器周期数,<br />而且非常准确.<br />对于LPC900,&nbsp;&nbsp;时钟周期&nbsp;=&nbsp;2&nbsp;x&nbsp;机器周期.<br /><br />from&nbsp;zlgmcu_kenand
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

17

帖子

0

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

9

主题

17

帖子

0

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