第三章,寄存器
Posted daishangjing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第三章,寄存器相关的知识,希望对你有一定的参考价值。
第三章,内存访问
一,字数据在内存中的存储
1, 内存以字节为单位,划分为若干个单元。字节:8bit,字:16bit,双字:32bit,四字:64bit
2, 字数据的存储的原则为:高-高-低-低,字数据的低位字节存放于低地址内存单元,字数据的高位字节存放于高地址的内存单元。取低地址内存单元地址作为字数据地址。
例子:
二,数据在内存和cpu之间的传送
1,DS:数据段段寄存器,用于存放数据段的段地址。在mov,add,sub等汇编指令中,访问内存单元时,默认情况下,指的是数据段。Mov ax,[1];ax ((ds)*16+1)
三,汇编指令mov,add,sub
1, 范例:
2, Mov指令:
3, mov指令注意:两个操作数要一致
关于常数,又名立即数,不可做为第一个操作数(目的操作数)。作第二个操作数时,若最高位进制的a~f,前面要加0
两个内存单元之间不可直接传送数据:如mov[1],[2].不可用mov指令修改cs,ip的值。
4, add指令
add指令的操作数不能同时是内存单元:add [1],[2];add指令的操作数不能是段寄存器
5, sub指令
注意:两个内存单元不可直接用sub指令相减
Sub指令的操作数不能是段寄存器
四,栈
1, 栈是逻辑上的概念,可以将一段内存空间当栈使用。特点:后进先出。
2, 8086中栈以字为存取单位
3, 栈顶:最后入栈的字数据所对应的地址单元,栈底:固定的一端,栈区最高地址单元前的一个单元
4, Ss:栈段段寄存器,存放栈段的段地址;sp:栈指针寄存器,存放栈顶的偏移地址
(ss)*16+(sp) 栈顶的物理地址
5, 栈的操作指令:push,pop
6,于8086cpu而言,push,pop操作,入栈出栈均已字为单元,操作对象不能常数,pop段寄存器中,段寄存器不能是cs,ss
以上是关于第三章,寄存器的主要内容,如果未能解决你的问题,请参考以下文章