解释一下下面这段程序,越具体越好……谢谢啦!DLY PROC NEAR PUSH CX PUSH DX MOV DX,1
来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/27 21:34:22
解释一下下面这段程序,越具体越好……谢谢啦!DLY PROC NEAR PUSH CX PUSH DX MOV DX,10000
DLY PROC NEAR
PUSH CX
PUSH DX
MOV DX,10000
DL1:
MOV CX,6801
DL2:
LOOP DL2
DEC DX
JNZ DL1
POP DX
POP CX
RET
DLY ENDP
DLY PROC NEAR
PUSH CX
PUSH DX
MOV DX,10000
DL1:
MOV CX,6801
DL2:
LOOP DL2
DEC DX
JNZ DL1
POP DX
POP CX
RET
DLY ENDP
DLY PROC NEAR ;定义函数
PUSH CX ;cx入栈保存
PUSH DX ;dx入栈保存
MOV DX,10000 ;dx装入10000,也就是dx=10000
DL1:;标号,也就是一个记号
MOV CX,6801 ;将cx中存入6801
DL2:;标号
LOOP DL2 ;执行这条语句的时候,程序会现判断cx的值是不是0,如果是0就继续向下执行.如果不是0就将cx的值减一,然后跳转到DL2这个位置执行.然后一直循环,知道cx的值减到0为止.我们看到cx的初始值是6801.也就是要循环6801次.
DEC DX ;将dx的值减一
JNZ DL1 ;如果dx的值减一后不是0,就跳到DL1处执行,如果是0,就继续向下执行
POP DX ;将之前保存的dx值还原到dx
POP CX ;将之前保存的cx值还原到cx
RET ;返回主程序
DLY ENDP ;函数结束
说白了这个就是一个延时程序,它就是让cpu空转一段时间.
PUSH CX ;cx入栈保存
PUSH DX ;dx入栈保存
MOV DX,10000 ;dx装入10000,也就是dx=10000
DL1:;标号,也就是一个记号
MOV CX,6801 ;将cx中存入6801
DL2:;标号
LOOP DL2 ;执行这条语句的时候,程序会现判断cx的值是不是0,如果是0就继续向下执行.如果不是0就将cx的值减一,然后跳转到DL2这个位置执行.然后一直循环,知道cx的值减到0为止.我们看到cx的初始值是6801.也就是要循环6801次.
DEC DX ;将dx的值减一
JNZ DL1 ;如果dx的值减一后不是0,就跳到DL1处执行,如果是0,就继续向下执行
POP DX ;将之前保存的dx值还原到dx
POP CX ;将之前保存的cx值还原到cx
RET ;返回主程序
DLY ENDP ;函数结束
说白了这个就是一个延时程序,它就是让cpu空转一段时间.
解释一下下面这段程序,越具体越好……谢谢啦!DLY PROC NEAR PUSH CX PUSH DX MOV DX,1
dh_lop0:add bx,20 push cx mov cx ,16 mov dx,line_char 这段代码什么
mov ecx,[0DB3A30] push 0 push 0 push 0 push -1 push 20 call
程序开头push ds mov ax,0 push ax
汇编语言的程序开始都有 PUSH DS MOV AX,0 PUSH AX 这三段有什么作用?
PUSH 1 PUSH
微机原理题CS:2000H MOV AX,2012H2003H MOV CX,200CH2006H PUSH CX 20
下面一段程序完成什么操作 MOV CL,04 SHR DX,CL MOV BL,AH SHL AX,CL SHR BL,
执行下列程序段后AX,BX,CX,DX,寄存器的内容分别是什么?
分析下面程序段:MOV AL,200 SAR AL,1 MOV BL,AL MOV CL,2 SAR AL,CL ADD
汇编的题 mov ax,2 mov bx,4 mov cx,6 mov dx,8 L:inc ax bec cx add
单片机中PUSH 2 PUSH 1