🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
基础四物理地址=段地址x16+偏移地址做法 编程时,可以根据需要将一组内存单元定义为一个段。 可以将起始地址为16的倍数,长度为N(N≤64K )的一组地址连续的内存单元,定义为一个段。 将一段内存定义为一个段,用一个段地址指示段,用偏移地址访问段内的单元--在程序中可以完全由程序员安排。 三种分段 * **数据段**:将段地址放在DS中。用mov, add, sub等访问内存单元的指令时, CPU将我们定义的数据段中的内容当作数据段来访问; * **代码段**:将段地址放在CS中,将段中第一条指令的偏移地址放在IP中。 CPU将执行我们定义的代码段中的指令; * **栈段**:将段地址放在SS中,将栈顶单元的偏移地址放在SP中。CPU在需要进行栈操作(push, pop)时,就将我们定义的栈段当作栈空间来用。