本文主要介绍直接定址表。
一、地址标号和数据标号
1,地址标号
前面各章节中,在代码段中,经常会用到各种标号,有些表示指令的起始地址,有些表示数据的起始地址。这种只在代码段中使用的,形如“s:***”的标号,被称为“地址标号”。
地址标号表示代码段中的指令或数据的起始(偏移地址),对地址标号的调用(call),经过编译器后,会转换为偏移地址。注意,如果直接进行运行,需要使用“offset”伪指令。
2,数据标号
数据标号在形式上与地址标号不同的是,没有冒号。此外,数据标号可以出现在代码段之外的其他段中。数据标号表示具体的一个数据数据单元的值,它也可以在后面附中括弧,进行运算,默认为第一个单元的数据。数据标号与地址标号在实际表示的内容上的差异,类似“指针与数组”的差异。
此外,数据标号也可以当数据来定义,表示偏移地址或段地址+偏移地址。
检测点16.1