80C51在電源重置后(Power On Reset)所執(zhí)行的第一個(gè)程序模塊并不是使用者的主程序main(),而是一個(gè)隱藏在KEIL-C51標(biāo)準(zhǔn)鏈接庫中稱為startup.a51的程序模塊。
startup.a51的主要工作是把包含idata、xdata、pdata在內(nèi)的內(nèi)存區(qū)塊清除為0,并且初始化遞歸指針。接著startup.a51被執(zhí)行的仍然是一個(gè)隱藏在KEIL-C51標(biāo)準(zhǔn)鏈接庫中稱為init.a51的程序模塊。而init.a51的主要工作則是初始化具有非零初始值設(shè)定的變量。
在完成上述的初始化程序之后,80C51的控制權(quán)才會(huì)交給main()開始執(zhí)行使用者的程序。