您的位置:首页 > 其它

汇编语言的七种寻址方式

2017-10-14 15:25 309 查看
立即寻址

  指令中直接给出操作数

MOV A, #30H ;把立即数30H传送到累加器A,执行后(A)=30H


直接寻址

  指令中直接给出操作数内部RAM单元地址

MOV A, 30H ;把内部RAM单元中的数据传送给累加器A,执行后(A)=(30H)


寄存器寻址

  通过寄存器找到操作数

MOV A, R0 ;将R0的值传送给累加器A, 执行后(A)=(30H)


寄存器间接寻址

  以寄存器中的内容为地址,以该地址中的内容为操作数。MCS-51规定R0或R1为间接寻址寄存器

MOV A, @R0 ;执行后A=((R0))


变址寻址

  以DPTR或PC作为基址,累加器A为变址,并将两者内容相加形成的16位地址作为操作数地址

MOVC A, @A+DPTR ;执行后(A)=((A)+(DPTR))


相对寻址

  目标地址=PC当前值+跳转指令字节数+rel,仅在转移指令中使用

位寻址

  操作数是内部RAM 20H~2FH单元中的位(00~7FH)或者SFR中具有位地址的某一位

MOV C, 20H ;将20H位的值传送给进位位CY,20H为位地址
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息