我們經常用到“存儲地址和連接地址不同”(術語上稱為加載時域和運行時域)的情況:
大多機器上電時是從地址0開始運行的,但是從地址0運行程序在性能方面總有很多限制,
所以一般在開始的時候,使用與位置無關的指令將程序本身復制到它的連接地址處,
然后使用向pc寄存器賦值的方法跳到連接地址開始的內存上去執行剩下的代碼。
http://zqwt.012.blog.163.com/blog/static/120446842010113002939616/
我們經常用到“存儲地址和連接地址不同”(術語上稱為加載時域和運行時域)的情況:
大多機器上電時是從地址0開始運行的,但是從地址0運行程序在性能方面總有很多限制,
所以一般在開始的時候,使用與位置無關的指令將程序本身復制到它的連接地址處,
然后使用向pc寄存器賦值的方法跳到連接地址開始的內存上去執行剩下的代碼。
http://zqwt.012.blog.163.com/blog/static/120446842010113002939616/
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。