子程序調用有以下幾個優(yōu)點
發(fā)布時間:2016/7/12 20:50:45 訪問次數(shù):2287
子程序調用有以下幾個優(yōu)點:
①避免了對相同程序段的重復編寫;
②簡化程序的邏輯結構,便于閱讀、查錯,EP3C25Q240I7N同時也便于子程序調試;
③節(jié)省存儲器空間。
子程序編寫和調用過程時要注意以下幾點。
①應給子程序命名。子程序的第一條指令應加標號作為子程序名,子程序調用指令通過此標號對子程序進行調用。
②子程序的結尾必須為子程序返回指令RET。
③子程序嵌套時應考慮堆棧的深度。
④能正確傳遞入口參數(shù)和出口參數(shù)。
⑤現(xiàn)場的保護和恢復。
在子程序執(zhí)行過程中,常常要用到單片機的―些通用單元,如工作寄存器R0~R7、累加器A、數(shù)據(jù)指針DPTR,以及有關標志和狀態(tài)等。而這些單元中的內(nèi)容在調用結束后的主程序中仍要用到,因此對那些主程序和子程序中都要用到的寄存器,在轉移之前應將其內(nèi)容壓入堆棧進行保護,稱為現(xiàn)場保護。在執(zhí)行完子程序,返回繼續(xù)執(zhí)行主程序前,被保護的數(shù)據(jù)出棧,恢復其原內(nèi)容,稱為現(xiàn)場恢復。
子程序調用有以下幾個優(yōu)點:
①避免了對相同程序段的重復編寫;
②簡化程序的邏輯結構,便于閱讀、查錯,EP3C25Q240I7N同時也便于子程序調試;
③節(jié)省存儲器空間。
子程序編寫和調用過程時要注意以下幾點。
①應給子程序命名。子程序的第一條指令應加標號作為子程序名,子程序調用指令通過此標號對子程序進行調用。
②子程序的結尾必須為子程序返回指令RET。
③子程序嵌套時應考慮堆棧的深度。
④能正確傳遞入口參數(shù)和出口參數(shù)。
⑤現(xiàn)場的保護和恢復。
在子程序執(zhí)行過程中,常常要用到單片機的―些通用單元,如工作寄存器R0~R7、累加器A、數(shù)據(jù)指針DPTR,以及有關標志和狀態(tài)等。而這些單元中的內(nèi)容在調用結束后的主程序中仍要用到,因此對那些主程序和子程序中都要用到的寄存器,在轉移之前應將其內(nèi)容壓入堆棧進行保護,稱為現(xiàn)場保護。在執(zhí)行完子程序,返回繼續(xù)執(zhí)行主程序前,被保護的數(shù)據(jù)出棧,恢復其原內(nèi)容,稱為現(xiàn)場恢復。