概念:


寻址——找操作数

1,给出操作数;

2,直接按照给出数据为地址,寻址;

3,以给出数据为地址找到数据,再以找到的数据为地址,寻需要的操作数;



 

 

先读百度百科《寻址方式》:

 


http://baike.baidu.com/view/889427.htm


 


 


 


立即数寻址:


 


例如:MOV   AX,10H,采用的是立即数寻址方式,这条指令(包含操作数AX和10H)被汇编器编译成一条机器代码,此指令执行前被加载到指令缓冲队列里,执行时CPU在读取此机器代码时就读取了10H,10H立即就可以被送往AX(而不用到寄存器或者内存中去取操作数),因此叫做立即数寻址,指令执行效率最高。


 


立即数寻址中的数字是指令的一部份,存储在代码段,执行是不用去取数据段中的数据


 


其实立即数寻址也就是不需要寻址,指令需要的数据就再指令中!

例如mov   ax,10h反汇编后你就能看到再指令中就包含了10h,而其他的指令如mov   ax,bx你就会发现指令中不包含bx中的数值(也就是你要的数)


其实不管怎么样,寻址方式就市三种


数据在指令中,

数据在寄存器中

数据再内存单元中


数据在指令中就是立即数寻址了,(常数和符号常量都是立即寻址)

数据在寄存器中,通过指定寄存器号就可以了

数据在内存中就需要偏移地址,偏移地址也是数据

根据偏移地址存在的位置不同又可以细分(偏移地址在指令中,偏移地址在寄存器中,偏移地址在内存中)


 



 


 


位寻址:


单片机中,字节寻址是一次寻址八个位(bit),位寻址方式是一次只能寻址一个位(bit)