设单片机采用6MHz晶振,计算如下一段程序的执行时间,并说明这段程序的作用。 MOV R0,#20H MOV R3,#05H M

设单片机采用6MHz晶振,计算如下一段程序的执行时间,并说明这段程序的作用。
MOV R0,#20H
MOV R3,#05H
MOV A,@ R0
CPL A
ADD A,#01H
MOV @ R0,A
NEXT: INC R0,
MOV A,@ R0
CPL A
ADDC A,#00H
MOV @ R0,A
DJNZ R3,NEXT
SJMP $

百度一下指令表。
里面有每个指令的周期,
一个个算好周期。
6MHz,如果是普通的51,时钟除12是一个指令周期。
也就是500KHz,周期是1/500000s

一个一个算。

把内存中20H后的6个数字取反、加一,我也不知道干嘛,好像是取补码的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-06-18
最好的办法是用示波器啊,用一个io口循环取反啊
第2个回答  2012-06-16
应该是74us,但是做什么的不清楚,R0的值在20H左右来回波动,不结合题目是不懂有什么用的吧!