汇编学习笔记:第三章 寄存器(内存访问)

1、字单元:即存放一个字形数据(16位)的内存单元,由两个地址连接的内存单元组成;
2、DS段寄存器:8086CPU不支持将数据直接送入段寄存器(如:mov ds,1000H),只能将另一个寄存器的数据送入ds段寄存器(如:mov ds,bx);
3、在使用mov时,可以使用mov al,[0]的方式,把数据送入al寄存器,其中“[0]”为偏移地址,并且会自动取ds中的数据为内存单元的段地址。所以,mov al,[0]会把“ds:0”所在内存单元的数据,送入al中;
4、字的传送,除了有:mov 寄存器,数据、mov 寄存器,寄存器、mov 寄存器,内存单元等形式,还有:add 寄存器,数据、sub寄存器,数据,分别代表:相加、相减;
5、数据段:根据编程需要,可以将一组内存单元定义为一个段。比如,可以将一组长度为N(N<=64kb)、地址连续、起始地址为16的倍数的内存单元,当作专门存储数据的内存空间;
6、栈:后进先出的线性表,衍生出两个新命令push、pop,分别代表:入栈、出栈。用法如:push ax、pop ax;
7、SS:SP指向的是栈顶, 栈还会出现栈顶超界问题 。每执行一次push ax,相当于执行了:SP=SP-2、将ax中的内容送入当前SS:SP处;
8、栈段: 一段连续的内存空间,起止位置由我们自行安排,遵循后进先出原则。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注