一 多个段
1.dw的含义是定义字型数据
2.在程序的第一条指令的前面加上了一个标号start,而这个标号在伪指令end的后面出现。end除了通知编译器程序结束外,还可以通知编译器程序的入口在什么地方。
3.在程序中,段名就相当于一个标号,它代表了段地址。所以指令mov ax,data,的含义就是将名称为data的段的段地址送入ax。一个段中的数据的段地址可以由段名来代表,偏移地址就要看它在断中的位置了。
二 更灵活的定位内存地址的方法。
1.and指令:逻辑与指令,按位进行与运算。
通过该指令可以将操作对象的相应位设为0,其他位不变。
2,or指令:逻辑或指令,按位进行或运算。
通过该指令可以将操作对象的相应位设为1,其他位不变。
3大小写的相关转换
大变小 or dl,0010000B
小变大 and dl,11011111B
4 。在前面我们使用了【bx】的方法来指明一个内存单元,还可以用一种更为灵活的方式来指明内存单元:【bx+idata】。
5 例如其他的si di 等也可以用来指明内存单元的位置。
相关的寻址的方法:
三:数据处理的基本问题:
1.8086可以处理两种尺寸的数据,byte和word。所以在机器指令中要指明,指令进行的是字操作还是字节操作。
2.div是除法指令
除数:有8位和16位这两种,在一个reg或内存单元中。
被除数:默认的放在ax和dx之中,如果除数为8位,被除数为16位,默认在ax中存放,如果除数
为16位,被除数为32位,在dx和ax中间存放,dx存放高16位,ax中存放低16位。
结果:如果除数为8位,则al存储除法操作的商,ah存储除法操作的余数;如果除数为16位,则ax存储除法操作的商,dx存储除法操作的余数。
3.dup:dup是一个操作符,在汇编语言中同dp、dw、dd等一样,也是由编译器识别处理的符号。他是和dp、dw、dd等数据定义伪指令配合使用的,用来进行数据的重复。