段与寻址 段是在程序中专门定义的一个区域,它是一个包括代码、数据以及堆栈的区域。比如,用ida打开一个exe程序,在反汇编窗口中可以看到程序分成了如下几段: 0x00000----------- 代码段 0x10000----------- 数据段 0x20000----------- 堆栈段 0x26000----------- 段是从小段边界,即能够被16除尽的单元开始的。因此,当一条指令往一个段寄存器装入段地址时,会自动移去最右边的4位。你可以定义任何数据的段,想要访问特定的段,只需要改变适当段寄存器中的地址…