‘壹’ mc-51单片机4种寻址方式
(1)立即寻址:操作数就包含在指令代码中,在操作码之后,称为立即数,用“#”表示.
(2)直接寻址:直接使用数所在单元的地址找到了操作数,所以称这种方法为直接寻址.操作
数在SFR、内部RAM、位地址空间.
(3)寄存器寻址:对选定的工作寄存器R0~R7、累加器A、通用寄存器B、地址寄存器DPTR中
的数进行操作.
(4)寄存器间接寻址:把地址放在另外一个寄存器中,根据这个寄存器中的数值决定该到哪个单
元中取数据.
(5)变址寻址(基址+变址):以DPTR或PC为基址寄存器,累加器A为变址寄存器.把两者内容相
加,结果作为操作数的地址.
(6)相对寻址:将PC中的当前内容与指令第二字节给出的数相加,结果作为跳转指令的转移地址
(转移目的地址).
(7)位寻址:对片内RAM的位寻址区和某些可位寻址的特殊功能寄存器进行位操作时的寻址方式.
‘贰’ 什么是单片机寻址方式
单片机有七种寻址方式分别是:1.寄存器寻址例如:
MOV
A,R0;2.直接寻址例如:
MOV
A,4FH;3.寄存器间接寻址
MOV
A,@R04.立即数寻址
MOV
A,#0FFH5.变址寻址(典型的是查表指令)
MOV
A,@A+DPTR6.相对寻址
SJMP
$7.位寻址
SETB
P0.0;
MOV
60H,40H;是属于直接寻址;(直接用内存单元的地址来寻找对应的内容)
MOV
A,
#58HMOV
RO,
#0B0HMOV
@RO,
AMOV
0B0H,
#28H而执行完以上指令后结果是:(0B0H)=P3=28H;因为在8051单片机中P3口是特殊功能寄存器(也占一内存)它的地址刚好是0B0H;程序的最后给0B0H赋了立即数28H;
‘叁’ 单片机系统指令的指令系统的寻址方式
访问指令
一、操作数在寄存器中;
如MOV A,Rn ;(Rn)→A,n=0~7
1、4组工作寄存区,共32个工作寄存器。
2、部分特殊功能寄存器,例如A、B 及DPTR等。
二、访问片外数据存储器
(1)用R0或R1作为间址寄存器,寻址范围为片外低256个字节;
(2)用DPTR作为间址寄存器,寻址范围为片外64K。
a) MOVX A,@Ri ;i=0或1
若(Ri)=70H,把外部RAM中70H单元的内容送到A
b) MOVX A,@DPTR
若(DPTR)=2000H,把外部RAM中2000H单元的内容送到A
3、堆栈操作指令访问堆栈区
堆栈专用操作指令PUSH(压栈)和POP(出栈)使用堆栈
指针(SP)作间址寄存器
指令PUSH(压栈)和POP(出栈),无前缀标志“@”
四、立即(数)寻址方式
操作数在指令中直接给出,需在操作数前面加前缀标志“#”。
如MOV A,#40H,此时立即数在程序存储单元中。
五、基址寄存器加变址寄存器间址寻址方式
1、以DPTR或PC作基址寄存器,以累加器A作为变址寄存器;
2、基址寄存器+变址寄存器形成操作数地址;
3、本寻址方式专门针对程序存储器,寻址范围可达到64KB。
4、本寻址方式的指令只有3条:
MOVC A,@A+DPTR
MOVC A,@A+PC
JMP @A+DPTR
前2条又称查表指令,将程序存储器单元内容给ACC;
后1条为散转指令,属于转移类指令。
(注)
(1)本寻址方式是专门针对程序存储器的寻址方式,寻址范围可达到64KB。
(2)本寻址方式的指令只有3条:
MOVC A,@A+DPTR
MOVC A,@A+PC
JMP @A+DPTR
六、位寻址方式
89C51有位处理功能,可以对数据位进行操作,
如MOV C,40H是把位40H的值送到进位位C。
寻址范围:
1、内部RAM中的位寻址区(20H—2FH),有2种表示方法。
(1) 直接给出位地址,如MOV C,40H;
(2) 单元地址加位数,如MOV C,(28H).0,指的是28H单元中的最低位。
2、SFR中的可寻址位(70H—FFH,共83位),有4种表示方法。
(1) 直接给出位地址,如MOV C,0D5H(PSW.5的位地址);
(2) 直接写位名称,如MOV C,F0;
(3) 单元地址加位数,如MOV C, (0D0H).5;
(4) SFR符号加位数,如MOV C, PSW.5。
七、相对寻址方式
在相对寻址的转移指令中,给出了地址偏移量“rel”,即
把PC的当前值+ rel 就构成了程序转移的目的地址。即
目的地址=转移指令所在的地址+ 转移指令的字节数+ rel
偏移量rel是带符号的8位二进制补码数,范围是:–128 ~ +127 ;
注意:PC的当前值是紧接在转移指令后的下一条指令的PC值。
‘肆’ 51单片机的寻址方式
亲,你好。MCS-51系列单片机寻址方式共有七种:寄存器寻址、直接寻址、立即数寻址、寄存器间接寻址、变址寻址、相对寻址、位寻址。 寄存器寻址是指操作数存放在某一寄存器中,指令中给出寄存器名,就能得到操作数。 寄存器可以使用寄存器组R0~R7中某一个或其它寄存器 (A,B,DPTR等)。 在指令中直接给出操作数所在的存储单元的地址,称为直接寻址方式。 在8051中,使用直接寻址方式可访问片内RAM的128个单元以及所有的特殊功能寄存器 (SFR),对于特殊功能寄存器,既可以使用他们的地址,也可以使用他们的名字。 MOV A, 90H ; 90H是P1口的地址。 指令操作码后面紧跟的是一字节或两字节操作数,用 # 号表示,以区别直接地址。 例如: 寄存器中的内容是一个地址,由该地址单元寻址到所需的操作数.
‘伍’ mcs-51单片机有哪几种寻址方式
51单片机有7种寻址方式:
1、立即寻址方式
采用立即寻址的指令一般是双字节的。第一个字节是指令的操作码,第二个字节是立即数。因此,操作数就是放在程序存储器中的常数。立即数前面应加前缀“#”号。
2、直接寻址方式
采用直接寻址的指令一般是双字节或三字节指令,第一字节为操作码,第二,三字节为操作数的地址码。单片机中,直接地址只能用来表示片内低128字节单元、专用寄存器和片内RAM的位地址空间。其中专用寄存器和位地址空间只能用直接寻址方式来访问。
3、寄存器寻址方式
寄存器寻址方式用于访问选定的工作寄存器R0~R7、A、B、DPTR和进位CY中的数。其中R0~R7由操作码低三位的8种组合表示,A、B、DPTR、C则隐含在操作码之中。
4、寄存器间接寻址方式
这种寻址方式中,指令指定寄存器中的内容为操作数的地址。寄存器间接寻址是用于访问片内数据存储器或片外数据存储器。当访问片内RAM
或片外的低256字节空间时,可用R0或R1做为间址寄存器;当访问片外整个64KB的地址RAM空间时,用16位寄存器DPTR做间址寄存器。这类指令都为单字节的指令,操作码的最低位表示是采用R0还是R1做间址器。
(5)简述单片机的寻址方式扩展阅读:
51单片机功能特性
1,可以仿真63K程序空间,接近64K的16位地址空间;
2,可以仿真64Kxdata空间,全部64K的16位地址空间;
3,可以真实仿真全部32条IO脚;
4,完全兼容keilC51UV2调试环境,可以通过UV2环境进行单步,断点,全速等操作;
5,可以使用C51语言或者ASM汇编语言进行调试;
6,可以非常方便地进行所有变量观察,包括鼠标取值观察,即鼠标放在某变量上就会立即显示出它此的值;
7,可选使用用户晶振,支持0-40MHZ晶振频率;
8,片上带有768字节的xdata,您可以在仿真时选使用他们,进行xdata的仿真;
9,可以仿真双DPTR指针;
10,可以仿真去除ALE信号输出.;
11,自适应300-38400bps的所有波特率通讯。
‘陆’ MCS-51单片机的指令系统有几种寻址方式。
MCS-51单片机的指令系统有七种寻址方式,分别是:
一、立即寻址
立即寻址就是将操作数紧跟在操作码后面,与操作码一起放在指令代码段中,在程序运行时,程序直接调用该操作数,而不需要到其他地址单元中去取相应的操作数,上述的写在指令中的操作数也称作立即数。
二、直接寻址
直接寻址在指令格式的地址的字段中直接指出操作数在内存的地址。由于操作数的地址直接给出而不需要经过某种变换,所以称这种寻址方式为直接寻址方式。在指令中直接给出参与运算的操作数及运算结果所存放的主存地址,即在指令中直接给出有效地址。
三、寄存器寻址
寄存器寻址是指操作数在寄存器中,由指令操作码中的rrr三位的值和PSW中RS1及RS0的状态,选中某个工作寄存器区的某个寄存器,然后进行相应的指令操作。
四、寄存器间接寻址
寄存器间接寻址是将指定的寄存器内容为地址,由该地址所指定的单元内容作为操作数。MCS-51规定R0或R1为间接寻址寄存器,它可寻址内部RAM低位地址的128个字节单元内容。还可采用数据指针(DPTR)作为间接寻址寄存器,寻址外部数据存储器的64K字节空间,但不能用本寻址方法寻址特殊功能寄存器。
五、相对寻址
相对寻址以程序计数器PC的当前值(R15中的值)为基地址,指令中的地址标号作为偏移量,将两者相加后得到操作数的有效地址。
六、变址寻址
把变址寄存器的内容(通常是位移量)与指令地址码部分给出的地址(通常是首地址)之和作为操作数的地址来获得所需要的操作数就称为变址寻址。
七、位寻址
对位地址中的内容进行位操作的寻址方式称为位寻址。由于单片机中只有内部RAM和 特殊功能寄存器的部分单元有位地址,因此位寻址只能对有位地址的这两个空间进行寻址操作。
(6)简述单片机的寻址方式扩展阅读:
MCS-51单片机是一种集成的电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
‘柒’ 80c51单片机有几种寻址方式,各涉及那些存储空间
答: 80C51 有七种寻址方式:
1、立即寻址,寻址空间为ROM;
2、直接寻址,寻址空间为片内RAM的低128B和特殊功能寄存器;
3、寄存器寻址,寻址空间为A、B、DPTR、CY、通用工作寄存器等;
4、寄存器间接寻址,片内RAM低128B、片外RAM;
5、相对寻址,寻址空间为ROM; .
6、变址寻址,寻址空间为ROM;
7、位寻址,寻址空间为片内RAM低128B的位寻闹前尺址区的128个位,其字节地址为20H~2FH; 以及部分可以位寻址的特殊功能寄存器。
(7)简述单片机的寻址方式扩展阅读
指令的寻址方式有以下两种:
1、顺序寻址方式
由于指令地址在内存中按顺序安排,当执行一段程序时,通常是一条指令接一条指令地顺序进行。悔态也就是说,从存储器取出第1条指令,然后执行这条指令;接着从存储器取出第2条指令,再执行第二条指令;接着再取出第3条指令。
这种程序顺序执行的过程,液高称为指令的顺序寻址方式。为此,必须使用程序计数器(又称指令计数器)PC来计数指令的顺序号,该顺序号就是指令在内存中的地址。
2、跳跃寻址方式
当程序转移执行的顺序时,指令的寻址就采取跳跃寻址方式。所谓跳跃,是指下条指令的地址码不是由程序计数器给出,而是由本条指令给出。注意,程序跳跃后,按新的指令地址开始顺序执行。因此,程序计数器的内容也必须相应改变,以便及时跟踪新的指令地址。
‘捌’ 51系列单片机寻址方式的寻址方式
立即数寻址又称立即寻址,即指令中直接给出操作数的寻址方式称为立即数寻址。在51系列单片机指令系统中,立即数用前面加“#”号的8位数表示(#data,如#30H)或16位数(#data16,如#2052H)表示。举例说明立即数寻址方式,以传送指令为例。
例:MOV A, #80H ;80H——>A
MOV DPTR, #2000H ;2000H——>DPTR 指令中直接给出操作数地址(dir)的寻址方式称为直接寻址。寻址对象为:1 内部数据存储器,在指令中以直接地址表示;2特殊功能寄存器SFR,在指令中用寄存器名称表示。
下面举例说明。
例:MOV A, 25H ;内部RAM的(25H)——>A
MOV P0, #45H ;45H——>P0 ,P0为直接寻址的SFR
MOV 30H,20H ;内部RAM的(20H)——>(30H) 以通用寄存器的内容为操作数的寻址方式称为寄存器寻址。通用寄存器包括:A、B、DPTR、R0~R7。其中B寄存器仅在乘法、除法指令中为寄存器寻址,在其它指令中为直接寻址。A寄存器可以寄存器寻址,又可以直接寻址(此时写作ACC)。直接寻址和寄存器寻址的差别在于,直接寻址是操作数所在的字节地址(占一个字节),寄存器寻址是寄存器编码出现在指令码中。寄存器寻址速度比直接寻址要快。除上面所指的几个寄存器外,其它特殊功能寄存器一律为直接寻址。
例:MOV A, R0 ;R0——>A,R0为寄存器寻址
MUL AB ;A×B——>BA,A,B为寄存器寻址
MOV B, R0 ;R0——>B,R0为寄存器寻址,B为直接寻址
PUSH ACC ;A的内容入栈,A为直接寻址
ADD A, ACC ;A为寄存器寻址,ACC为直接寻址 以寄存器中的内容为地址,该地址的内容为操作数的寻址方式称为寄存器间接寻址。能够进行寄存器间接寻址的寄存器有:R0、R1、DPTR,用前面加@表示,如@R0、@R1、@DPTR。寄存器间接寻址的存储空间包括内部数据存储器和外部数据存储器。由于内部数据存储器共有128字节,因此用一字节的R0和R1可间接寻址整个空间。而外部数据存储器最大可达64K,仅R0或R1无法寻址整个空间,为此需要由P2端口提供外部RAM高8位地址,由R0或R1提供低8位地址,由此共同寻址64K字节范围。也可用16位的DPTR寄存器间接寻址64K字节存储空间。
在指令中,是对内部RAM还是对外部RAM寻址,区别在于对外部RAM的操作仅有数据传送指令,并且用MOVX作为操作助记符。
例:MOV @R0, A ;A——>以R0内容为地址的内部RAM中
MOVX @DPTR, A ;A——>以DPTR内容为地址的外部RAM中 由寄存器DPTR或PC中的内容加上A累加器内容之和而形成操作数地址的寻址方式称为变址寻址。变址寻址只能对程序存储器中的数据进行寻址操作。由于程序存储器是只读存贮器,因此变址寻址只有读操作而无写操作。在指令符号上采用MOVC的形式。
例:MOVC A, @A+DPTR ;(A+DPTR)——>A
MOVC A, @A+PC ; (PC)+1——PC ((A)+(PC))——>A
图4 MOVC A, @A+DPTR
图5 MOVC A, @A+PC 对位地址中的内容进行位操作的寻址方式称为位寻址。由于单片机中只有内部RAM和特殊功能寄存器的部分单元有位地址,因此位寻址只能对有位地址的这两个空间进行寻址操作。位寻址是一种直接寻址方式,由指令给出直接位地址。与直接寻址不同的是,位寻址只给出位地址,而不是字节地址。
例:SETB 20H ;1——>20H位
MOV 32H, C ;进位Cy(即指令中的C)——>32H位 以当前程序计数器PC的内容为基址,加上指令给出的一字节补码数(偏移量)形成新的PC值的寻址方式称为相对寻址。相对寻址方式只修改PC值,故主要用于实现程序的分支转移。
例:SJMP 08H ;PC+2+08H——>PC (该指令为两字节,所以有PC+2)
‘玖’ 单片机的几种寻址方式
51单片机有7种寻址方式:
1、立即数寻址
2、直接寻址
3、寄存器寻址
4、寄存器间接寻址
5、变址寻址
6、位寻址
7、相对寻址
‘拾’ MCS-51系列单片机有哪7种寻址方式各有什么特点
MCS-51系列闭改单片机有哪7种寻址方式?各有什么特点?
正确答案:立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址、相对寻址、位寻址。立即寻址数据包含指轿尘判令信息中、直接寻址数据在存储空间、寄存器兄好寻址数据在工作寄存器、寄存器间接寻址中数据在意寄存器内容为地址的数据存储空间,变址寻址数据在累加器数值与基址数值之和作为地址所对应的存储器中,相对寻址是目标指令与当前指令的距离,位寻址是对应片内RAM的位寻址区。