永发信息网

DELAY: MOV R5,#1 D1: MOV R6,#2 D2:MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 这些汇编是什么意

答案:3  悬赏:70  手机版
解决时间 2021-04-02 06:37
DELAY: MOV R5,#1 D1: MOV R6,#2 D2:MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 这些汇编是什么意
最佳答案
DELAY 和 D1、D2是一个标号,相当是标记的地址。$标记的是本条指令地址。
DJNZ ,Addr 是一个跳转指令,具体操作是:
Rx=Rx-1;
if Rx != 0
goto Addr
否则,往后执行
这一段代码其实就是一个多重循环,相当于 C 语言里的
for (i = 1;i >0 ;i--) // i 相当于R5
for (j= 2; j>0 ;j--) // j 相当于 R6
for (k=248;k>0 ;k--) // k相当于 R7
{
_NOP(); //每条汇编指令对应了一定的机器时间周期数(与具体型号有关),
DJNZ好像是3个机器周期,
一直在这循环打转,每执行一条指令就会花掉一定的时间,
所以起到延 时的作用
}
主要作用就是延时,数节拍数。在 单片机的教程定时器里都会有这样的范例。
全部回答
DELAY: MOV R5,#1
D1: MOV R6,#2
D2:MOV R7,#248
DJNZ R7,$ R7减到0
DJNZ R6,D2 R6减一次跳到D2直到R6为0
DJNZ R5,D1 R5减一次跳到D1直到R5为0
实际上就是延时了1*2*248个机器周期 起到一个延时的作用追问能不能在具体一点 就是其中的D1 D2 DNJZ 是什么意思 ?
为什么是1*2*248个机器周期? 谢谢!
;这是一段延时子程序,具体意思,我在每行语句中加以注释
DELAY:
MOV R5,#1 ;最外层循环次数,1的话可以不要
D1:
MOV R6,#2 ;中间层循环次数
D2:
MOV R7,#248 ;最内层循环次数
DJNZ R7,$ ;最内层循环,次数是:1*2*248
DJNZ R6,D2 ;中间层循环,次数是:1*2
DJNZ R5,D1 ;外层循环,次数是1
RET ;程序返回
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
I don't really understand这句是什么意
谜语:上八是倒八,下八是正八,是字中间搭,
神域召唤 五星角色 兑换 哪个好
三相电煮面桶的接线方法
如何找到,洛廷石的官网?
有没有老哥用过手柄转换器的,比如xone给ps4
台湾男子做了什么丧尽天良的事?
L101905610B和F8DCOR火花塞通用吗
必胜诀原文写的什么?
怎么做,如何做,家常扣肉的做法大全视频
i pad哪个好用
怎么卡刷cwm recovery
求那夏的《谁的青春不腐朽》1和2的资源百度云
子宫内膜增厚带曼乐环带多久之后就起到很
文件签发是什么意思
推荐资讯
QQ飞车挑战暴风任务怎么做
牡丹全花茶都有哪些品牌?
梦妆的乳液是不是含汞量超标?我用时,第二天
runningman151108跳的是什么舞
请问今年荷兰乙级足球联赛,目前哪些队拿到了
别人的小米账号在我的小米上可以登录吗
2017年驾校政策就要改革 是在改革之前报名好
— Is Mr. Smith driving here? —I’m not
在steam上下的罗马2全面战争可不可以更改语言
桃源高中以及各校的录取分数线
43万的房子首付多少,剩下的15年贷款每月还多
关于在英国买欧美原版专辑
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?