• 8051寻址方式总结


     

    8051单片机共有7种寻址方式。寻址方式是指令中确定操作数的形式,用来确定操作数所处的存储空间。 

    1.立即寻址:在指令中直接给出操作数 
    MOV A, #80H 8位操作数 
    MOV A, #2000H 16位操作数

    2.直接寻址:指令中直接给出操作数地址 
    (1)SFR,这一存储空间只能使用直接寻址 
    MOV PSW, #50H 
    (2)内部数据RAM,这一存储空间可以使用直接寻址和寄存器间接寻址 
    MOV A, 30H

    3.寄存器寻址:以通用寄存器的内容作为操作数(通用寄存器包括A, B, DPTR, R0~R7) 
    INC DPTR 
    注意:A、B既是通用寄存器,也是SFR(直接寻址)

    4.寄存器间接寻址:以寄存器中的内容作为操作数的地址 
    能够用于寄存器间接寻址的寄存器有:R0,R1,DPTR,SP 
    区分内部数据RAM寻址和外部数据RAM寻址:外部数据RAM寻址指令上采用MOVX
    对内部数据RAM寻址:使用8位的R0或者R1即可 
    MOV @R0, A 
    对外部数据RAM寻址:使用P2端口提供高8位地址,使用R0或者R1提供低8位地址;或者使用16位的DPTR提供地址 
    MOVX A, @R1 
    MOVX @DPTR, A

    5.变址寻址:以基址寄存器PC或者DPTR与变址寄存器A中的内容之和作为操作数的地址 
    变址寻址只能对程序存储器中的数据进行寻址,由于程序存储器是只读的,因此变址寻址只有读操作,指令上采用MOVC 
    MOVC A, @A+DPTR 
    MOVC A, @A+PC

    6.相对寻址:用于修改PC的值,使得PC加上指令中给出的一字节的偏移量 
    由于转移指令有两字节和三字节这两种形式,因此偏移量的范围分别为-126~+129和-125~+130 
    SJMP 80H

    7.位寻址:以位地址中的内容为操作数 
    SETB 20H 
    MOV 32H, C

    总结一下各种寻址方式的使用场合: 
    立即寻址:常数 
    直接寻址:SFR和内部数据RAM 
    寄存器寻址:寄存器区 
    寄存器间接寻址:内部数据RAM和外部数据RAM 
    变址寻址:程序存储器 
    相对寻址:PC 
    位寻址:位地址区

  • 相关阅读:
    机器学习——逻辑回归(Logistic Regression)
    [BUUCTF]PWN4——pwn1_sctf_2016
    [BUUCTF]PWN1——test_your_nc
    [BUUCTF]PWN2——rip
    vuex状态管理详细使用方法
    微信小程序入门
    条件渲染vue
    vue-cli安装方法
    JavaScript逻辑运算符
    JavaScript的基本介绍
  • 原文地址:https://www.cnblogs.com/lvdongjie/p/6773974.html
Copyright © 2020-2023  润新知