A. 单片机寻址是什么意思啊
【答案】:寻址就是寻找操作数的地址。
80C51单片机指令系统共有七种寻址方式:
1)立即寻址;寻址范围:ROM 0000H~FFFFH;
2)直接寻址;寻址范围:内RAM 00H~FFH;
3)寄存器寻址;寻址范围:R0~R7,A,AB,DPTR,Cy;
4)寄存器间接寻址;寻址范围:内RAM 00H~FFH,外RAM 0000H~FFFFH;
5)变址寻址;寻址范围:ROM 0000H~FFFFH;
6)相对寻址;寻址范围:ROM PC~128B~PC+127B;
7)位寻址;寻址范围:内RAM 20H~2FH(位地址00H~FFH)和SFR中可寻址位。
B. 单片机中的位寻址是怎样的
单片机从20H到2FH的16个字节单元,共128位可以按位寻址,对应位寻址空间00H到7FH,所以位地址为40H的单元地址为40H/8+20H=28H。
另外特殊功能寄存器中,有16个可以位寻址,查一下表格就行了88H对应的字节地址也为88H。同理2AH-20H=0AH,0AH*8=50H。
单片机片内RAM的20H~2FH,这十六字节,可以按照“位”来寻址。
这里面共有128个“位地址”,分别为00H~7FH。
例如位地址4EH,是在“字节地址为29H的字节单元”中的第6位。
(2)南京单片机寻址扩展阅读
单片机的RAM存储器详解
8051共有4组寄存器,每组8个寄存单元(各为8),各组都以R0~R7作寄存单元编号。寄存器常用于存放操作数中间结果等。由于它们的功能及使用不作预先规定,因此称之为通用寄存器,有时也叫工作寄存器。
4组通用寄存器占据内部RAM的00H~1FH单元地址。在任一时刻,CPU 只能使用其中的一-组寄存器,并且把正在使用的那组寄存器称之为当前寄存器组。到底是哪一-组,由程序状态字寄存器PSW中RS1、RSO位的状态组合来决定。
位寻址区:
内部RAM的20H~2FH单元,既可作为一般RAM单元使用,进行字节操作,也可以对单元中每一位进行位操作,因此把该区称之为位寻址区。
位寻址区共有16个RAM单元,计128位,地址为00H~7FH。MCS-51具有布尔处理机功能,这个位寻址区可以构成布尔处理机的存储空间。这种位寻址能力是MCS-51的一个重要特点。
C. C51单片机对位寻址的原理和编程方法
原理:
位寻址是一种使用单片机实现程序控制位逻辑操作的方法,通过一系列指令在单字节的内存空间中的一个特定的位 (bit 位) 上进行操作。它用于控制乱拿只有两状态的I/O端口。
编程方法:
1. 用 ORL A, #data 命令将某个指定的位置位,即把单字节内部某个指定的位置1。
2. 用 ANL A, #data 命令清除某个指定衡槐的位置位,即咐陪友把单字节内部某个指定的位置0。
3. 用 CLR C 命令将某个指定的位置位清零,即把单字节内指定的位置置零。
4. 用 MOV C, bit 命令将某个指定的位置位置1,即把单字节内部某个指定的位置1。
D. mc-51单片机4种寻址方式
1. 立即寻址:在这种方式下,操作数直接包含在指令代码中,位于操作码之后,通常用“#”符号来表示。
2. 直接寻址:通过使用存储单元的地址直接找到操作数,这种方式因此得名。操作数可能位于SFR、内部RAM或位地址空间。
3. 寄存器寻址:选择R0至R7工作寄存器、累加器A、通用寄存器B或地址寄存器DPTR中的一个进行操作。
4. 寄存器间接寻址:使用另一个寄存器中的地址值来确定要访问的数据单元。
5. 变址寻址(基址+变址):以DPTR或PC作为基址寄存器,累加器A作为变址寄存器。将两者的内容相加,得到的和作为操作数的地址。
6. 相对寻址:将程序计数器(PC)中的当前内容与指令的第二字节相加,结果用于跳转指令的目标地址。
7. 位寻址:针对片内RAM的位寻址区和某些可位寻址的特殊功能寄存器执行位操作时的寻址方式。
E. 单片机一共有多少种寻址方式
51单片机有5中寻址方式
F. 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做间址器。
(6)南京单片机寻址扩展阅读:
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的所有波特率通讯。
G. 单片机位寻址区的作用
答:位寻址区位于数据存储器20F至2FH区间。此区间的寄存器可以位寻址,可以对它们进行位操作、位运算。
主要是要注意寄存器“本身”的地址与该寄存器“每一位”对应的位地址的关系,此是最易发生错误之处。20H对应的位地址为20H到27H。即:20H的第零位位地址是20H,第一位位地址是21H,以此类推。21H(我指的是寄存器,不是20H的第一位位地址)的位地址是从28H到2FH;22H(寄存器)对应的位地址 30H到37H;以此类推。
明白否?
可见,某寄存器某一位的位地址有可能和另一个寄存器的直接地址重合,但在使用时对位地址操作的指令与对直接地址的操作是不同的,所以不会混淆。
在使用上可以用位地址存储某个开关量(只有0,1两个值),将位地址数值做逻辑运算,或传递给特殊功能寄存器等等。
特殊功能寄存器里有许多也可位运算。置位,置零等等。这就可以仅对该位操作而不影响其他位。
H. 单片机中的寻址是什么意思
单片机中的寻址就是单片机指令中提供的操作数的形式。也就是寻找操作数或操作数所在地址的方式。
在51系列单片机中,存放数据的存储器空间有4种:内部RAM、特殊功能寄存器SFR、外部RAM和程序存储器ROM。其中,内部RAM和SFR统一编址,外部RAM和程序存储器是分开编址的。为了区别指令中操作数所处的地址空间,对于不同存存储器的数据操作,采用不同的寻址方式。
(8)南京单片机寻址扩展阅读
寻址方式
1、立即数寻址
立即数寻址又称立即寻址,即指令中直接给出操作数的寻址方式称为立即数寻址。在51系列单片机指令系统中,立即数用前面加“#”号的8位数表示(#data,如#30H)或16位数(#data16,如#2052H)表示。举例说明立即数寻址方式,以传送指令为例。
2、直接寻址
指令中直接给出操作数地址(dir)的寻址方式称为直接寻址。寻址对象为:1 内部数据存储器,在指令中以直接地址表示;2特殊功能寄存器SFR,在指令中用寄存器名称表示。
3、寄存器寻址
以通用寄存器的内容为操作数的寻址方式称为寄存器寻址。通用寄存器包括:A、B、DPTR、R0~R7。其中B寄存器仅在乘法、除法指令中为寄存器寻址,在其它指令中为直接寻址。A寄存器可以寄存器寻址,又可以直接寻址(此时写作ACC)。
直接寻址和寄存器寻址的差别在于,直接寻址是操作数所在的字节地址(占一个字节),寄存器寻址是寄存器编码出现在指令码中。寄存器寻址速度比直接寻址要快。除上面所指的几个寄存器外,其它特殊功能寄存器一律为直接寻址。
参考资料来源:网络-51系列单片机寻址方式
I. 单片机 寻址方式
单片机有七种寻址方式分别是: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;