标号(LABEL)是为一组机器指令所起名字,表明程序中的指令或许数据地址的符号。标号可有可无,只有当需要用符号地址来拜访该句子时,才给此句子赋予标号。经过在方针地址的前面放上一个标号,能够在指令中运用标号来替代直接运用地址。标号是程序方针标志,总是和某地址相联系,供搬运或循环指令操控搬运运用。标号是编译程序运用的,也就是说程序中最后生成的代码中标号都换成了相应的数值。
因标号表明是指令地址,所以它有三个特点,即段特点、偏移特点和类型特点。段特点即段地址,标号段必须在CS中。偏移特点是表明该标号到段首地址间隔,单位是字节,是16位无符号整数。类型特点是间隔特点,指标号和搬运指令间隔,该标号在本段内引证,间隔在-128~ 127之间时称短标号,间隔特点为SHORT,当标号在本段,间隔在-32768~ 32767之间时称近标号,间隔特点为NEAR,当引证标号指令和标号不在同一段时称远标号,间隔特点为FAR。
依据标号的生成方法可分为3种:
1.根据PC的标号。
根据PC的标号是坐落方针指令前或许程序中数据界说伪操作前的标号。这种标号在汇编时将被处理成PC值加上(或减去)一个数字常量。常用于表明跳转指令的方针地址,或许代码段中所嵌入的少数数据。
2.根据寄存器的标号。
根据寄存器的标号常用MAP和FIELD未界说操作,也能够该用EQU伪界说。这种标号在汇编时将被处理成寄存器的值加上(或减去)一个数据常量。常用于拜访数据段中的数据。
3.肯定地址。
肯定地址是一个32位数据。它能够寻址2的32次方 -1,即直接能够寻址整个内存空间。