问一下大家,内存中的偏移地址是可变的,通过偏移地址的改变来确定内存中这个段要访问什么地址,我这样理解对吗?
问一下大家,内存中的偏移地址是可变的,通过偏移地址的改变来确定内存中这个段要访问什么地址,我这样理解对吗?
只读内存ROM和随机内存RAM构成了内存空间,包含多个存储单元,每个存储单元都有一个唯一的编号,这就是存储单元的地址,可以看出,内存空间中并不存在偏移地址一说。
在程序中,为了数据的分类存放,程序的模块化,同时也因为16位汇编下寻址范围的限制,人为地将内存空间划分出段,如数据段,堆栈段,代码段等,编译时编译器会给段中的每条指令计算出一个地址,这个地址是相对段起始地址的一个偏移量,所以也叫偏移地址。
16位汇编下利用“段地址*16+偏移地址”定位要访问的存储单元。