请帮忙解释下这段汇编语言的意思:DELAY:MOV R7,#250 D1:MOV R6,#250 D2:DJNZ R6,
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/08/12 22:54:47
请帮忙解释下这段汇编语言的意思:DELAY:MOV R7,#250 D1:MOV R6,#250 D2:DJNZ R6,D2 DJNZ R7,D1 RET
以上汇编转化为C语言为:
void delay() {
for(R7=250;R7>0;R7--)
for(R6=250;R6>0;R6--);
}
这是执行一段延时.原理是:
执行一个语句需要消耗1到2个机器时间,除法的更长;
1个机器时间和晶振频率有关,一般单片机都是t=12/f,比如当晶振频率是12MHz的时候,1个机器时间是t=12/12MHz=1us
然后看循环R7*R6=62500次,
对于MOV R6,#250共执行250次,DJNZ R6,D2执行62500次,DJNZ R7,D1执行250次,则每句消耗2个机器时间有:
T=(250+62500+250)*2=126000us=126ms=0.126s
故延时越0.126秒
void delay() {
for(R7=250;R7>0;R7--)
for(R6=250;R6>0;R6--);
}
这是执行一段延时.原理是:
执行一个语句需要消耗1到2个机器时间,除法的更长;
1个机器时间和晶振频率有关,一般单片机都是t=12/f,比如当晶振频率是12MHz的时候,1个机器时间是t=12/12MHz=1us
然后看循环R7*R6=62500次,
对于MOV R6,#250共执行250次,DJNZ R6,D2执行62500次,DJNZ R7,D1执行250次,则每句消耗2个机器时间有:
T=(250+62500+250)*2=126000us=126ms=0.126s
故延时越0.126秒
晶振频率6MHZ,计算延时时间?DELAY:MOV R7,#0F6H LP:MOV R6,#0FAH DJNZ R6,$
帮我计算该程序时间delay:mov r5,#100del0:mov r6,#200del1:mov r7,#248de
51单片机汇编语言延时0.2秒的计算方法,请各位大侠指教!mov r4,#4 ;200ms mov r3#200 ;50
汇编语言mov 【ax+2】,bx的目的操作数地址
可控硅限流电阻的参数是怎么确定的?电阻R6和R7的电阻大小和功率选择是怎么确定的啊?求具体公式或者解释,
汇编语言错误 mov ax,es:[bx]
汇编语言 al=13h mov buf[di],al mov ax.dw1[bx][si] mov
MOV R2,R7 MOV A,@R2 DEC DPTR CPL 2FH MOV 20H.7,F0 PUSH DPTR
MOV BYTE PTR [DI],0 求解释这句的意思,byte
在如图所示的格子电路中,R1=R3=R5=R7=R8=1000Ω,R2=R4=R6=2000Ω,则
电压转电流电路问题如上图,通过虚短 需断,可以得到最终附载R6的电流为I=Vi/R7+(Vi-V3)/&nb
汇编语言的程序开始都有 PUSH DS MOV AX,0 PUSH AX 这三段有什么作用?