3.1内存中字的存储
在0地址处开始存放20000(4E20H):
高位对应高地址,低位对应低地址。
注意:0号是低地址单元,1号是高地址单元。
字单元:存放一个字型数据(16位)的内存单元,由两个地址连续的内存单元组成。高地址内存单元中存放字型数据的高位字节,低地址内存单元中存放字型数据的低位字节。
问题:
1、0地址单元中存放的字节型数据是多少?(20H)
2、0地址字单元中存放的字型数据是多少?(4E20H)
3、2地址字单元存放的字节型数据是多少?(12H)
4、2地址单元中存放的字型数据是多少?(0012H)
5、1地址字单元中存放的字型数据是多少?(124EH)
结论:
任何两个地址连续的内存单元,N号单元和N+1号单元,可以将它们看成两个内存单元,也可看成一个地址为N的字单元中的高位字节单元和低位字节单元。
3.2 DS和[address]
CPU要读取一个内存单元的时候,必须先给出这个内存单元的地址;
在8086PC中,内存地址由段地址和偏移地址组成。
8086CPU中有一个DS寄存器,通常用来存放要访问的数据的段地址。
例如:
我们要读取10000H单元的内容可以用如下程序段进行:
mov bx,10000H
mov ds,bx
mov al,[0]
上面三条指令将10000H(1000:0)中的数据读到al中。
已知的mov指令可以完成的两种传送功能:
1、将数据直接送入寄存器(如mov ax,1000H)
2、将一个