所谓程序浮动,就是在运行过程中采取相对地址的技术来实现。 1.除了一些特定的情况或者在早期的计算机中,程序在MEMORY中的位置是肯定的,比如会有BOOTLOADER把程序读到一个确定的位置。 2.而现在的计算机基本上这种情况比较少见了,除了一些操作系统的引导过程,这就带来了一个问题,就是在程序(特别是用ASM写的程序)中制定的一些数据的位置是不确定的。 3.比如你原来想读一个1500位置上的数据,但是实际上这个1500到底存了什么是不确定的,所以,采用了相对地址的策略,即所有的数据都是假设程序开始(ORG)位置为0的相对地址。 4.所谓程序浮动,就是针对这样一种情况,在运行过程中采取相对地址的技术来实现的,建议去看看LINUX BOOTLOADER的代码,会理解的比较清楚。
Copyright © 2022 2022手机版高清影视在线-众电影院 Inc.All Rights reserved.