发布网友
共2个回答
热心网友
所谓程序浮动,就是在运行过程中采取相对地址的技术来实现。
1.除了一些特定的情况或者在早期的计算机中,程序在MEMORY中的位置是肯定的,比如会有BOOTLOADER把程序读到一个确定的位置。
2.而现在的计算机基本上这种情况比较少见了,除了一些操作系统的引导过程,这就带来了一个问题,就是在程序(特别是用ASM写的程序)中制定的一些数据的位置是不确定的。
3.比如你原来想读一个1500位置上的数据,但是实际上这个1500到底存了什么是不确定的,所以,采用了相对地址的策略,即所有的数据都是假设程序开始(ORG)位置为0的相对地址。
4.所谓程序浮动,就是针对这样一种情况,在运行过程中采取相对地址的技术来实现的,建议去看看LINUX BOOTLOADER的代码,会理解的比较清楚。
热心网友
程序浮动就是 你打开了一堆程序,比如qq vx 他们按顺序调入memory
(qq
vx)就好比这样但是你把qq关了
(null
vx)然后你又把迅雷打开了
(迅雷
vx),然后你把vx关了,qq打开了
(迅雷
qq),qq从上面跑到了下面,这就是程序浮动
热心网友
所谓程序浮动,就是在运行过程中采取相对地址的技术来实现。
1.除了一些特定的情况或者在早期的计算机中,程序在MEMORY中的位置是肯定的,比如会有BOOTLOADER把程序读到一个确定的位置。
2.而现在的计算机基本上这种情况比较少见了,除了一些操作系统的引导过程,这就带来了一个问题,就是在程序(特别是用ASM写的程序)中制定的一些数据的位置是不确定的。
3.比如你原来想读一个1500位置上的数据,但是实际上这个1500到底存了什么是不确定的,所以,采用了相对地址的策略,即所有的数据都是假设程序开始(ORG)位置为0的相对地址。
4.所谓程序浮动,就是针对这样一种情况,在运行过程中采取相对地址的技术来实现的,建议去看看LINUX BOOTLOADER的代码,会理解的比较清楚。
热心网友
程序浮动就是 你打开了一堆程序,比如qq vx 他们按顺序调入memory
(qq
vx)就好比这样但是你把qq关了
(null
vx)然后你又把迅雷打开了
(迅雷
vx),然后你把vx关了,qq打开了
(迅雷
qq),qq从上面跑到了下面,这就是程序浮动
热心网友
所谓程序浮动,就是在运行过程中采取相对地址的技术来实现。
1.除了一些特定的情况或者在早期的计算机中,程序在MEMORY中的位置是肯定的,比如会有BOOTLOADER把程序读到一个确定的位置。
2.而现在的计算机基本上这种情况比较少见了,除了一些操作系统的引导过程,这就带来了一个问题,就是在程序(特别是用ASM写的程序)中制定的一些数据的位置是不确定的。
3.比如你原来想读一个1500位置上的数据,但是实际上这个1500到底存了什么是不确定的,所以,采用了相对地址的策略,即所有的数据都是假设程序开始(ORG)位置为0的相对地址。
4.所谓程序浮动,就是针对这样一种情况,在运行过程中采取相对地址的技术来实现的,建议去看看LINUX BOOTLOADER的代码,会理解的比较清楚。
热心网友
程序浮动就是 你打开了一堆程序,比如qq vx 他们按顺序调入memory
(qq
vx)就好比这样但是你把qq关了
(null
vx)然后你又把迅雷打开了
(迅雷
vx),然后你把vx关了,qq打开了
(迅雷
qq),qq从上面跑到了下面,这就是程序浮动