汇编语言中子程序可以调用子程序吗
1个回答
展开全部
汇编语言中子程序当然是可以调用其他子程序的。
我们编程时,之所以要引入子程序,其主要目的无非就是:减少重复代码;阅读方便;流程清晰;举例如下:
MAIN:
MOV A,#0FEH
MOV R2,#8
LOOP:
LCALL KEYSCAN
JB 00H,LOOP1
MOV P0,A
RL A
MOV R7,#200
LCALL DELAY
SJMP LOOP
LOOP1:
RR A
MOV R7,#200
LCALL DELAY
SJMP LOOP
KEYSCAN: ;按键检测子程序
JB P1.0,KEYR ;没有按键退出
MOV R7,#20 ;延时子程序传递参数
LCALL DELAY ;调用延时子程序
JNB P1.0,$ ;等待按键抬起
CPL 00H ;按键处理 位00H取反
KEYR:
RET
DELAY:
MOV R3,#250
DJNZ R3,$
DJNZ R7,DELAY
RET
END
我们编程时,之所以要引入子程序,其主要目的无非就是:减少重复代码;阅读方便;流程清晰;举例如下:
MAIN:
MOV A,#0FEH
MOV R2,#8
LOOP:
LCALL KEYSCAN
JB 00H,LOOP1
MOV P0,A
RL A
MOV R7,#200
LCALL DELAY
SJMP LOOP
LOOP1:
RR A
MOV R7,#200
LCALL DELAY
SJMP LOOP
KEYSCAN: ;按键检测子程序
JB P1.0,KEYR ;没有按键退出
MOV R7,#20 ;延时子程序传递参数
LCALL DELAY ;调用延时子程序
JNB P1.0,$ ;等待按键抬起
CPL 00H ;按键处理 位00H取反
KEYR:
RET
DELAY:
MOV R3,#250
DJNZ R3,$
DJNZ R7,DELAY
RET
END
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询