子程结构 1.多处调用完成同一功能的子程: 2.模块化程序设计: code SEGMENt code SEgMent begin: CALL subl CALL subp CALL sub2 CALL sub3 CALL subp MOV AH. 4cH INT 21H CALL subp subl PROC MOV AH. 4CH INT 2IH RET abI ENDP subi PROC sub2 Proc RET RET sub2 ENDP subp ENDP sub3 Proc code ENDS RET END start sub3 ENDP de ENDs 注意返回DOS语句位置 End begin
11 1.多处调用完成同一功能的子程: code SEGMENT start: 、、 CALL subp 、、 CALL subp 、、 CALL subp 、、 MOV AH, 4CH INT 21H subp PROC 、、 、、 RET subp ENDP code ENDS END start 2.模块化程序设计: code SEGMENT begin: CALL sub1 CALL sub2 CALL sub3 MOV AH, 4CH INT 21H sub1 PROC 、、 RET sub1 ENDP sub2 PROC 、、 RET sub2 ENDP sub3 PROC 、、 RET sub3 ENDP code ENDS END begin 子程结构 注意返回DOS语句位置
思考如下程序的执行流程: code SEGMENT start. CALL subp CALL subp MOV AH. 4CH INT 21H subp PROC RET subp ENDP 程序执行不到返回DOS功能调用处, MoⅴAH,4CH最后的结果是死机 INT 21H code ENDS END start 12
12 思考如下程序的执行流程: code SEGMENT start: 、、 CALL subp 、、 CALL subp 、、 ; MOV AH, 4CH ; INT 21H subp PROC 、、 、、 RET subp ENDP MOV AH, 4CH INT 21H code ENDS END start 程序执行不到返回DOS功能调用处, 最后的结果是死机