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