寻址方式的判断
单片机考试强化练习题

单片机考试强化练习题共100道小题,总分100分,单选50分,判断20分,填空10分,多选20分。
1、寻址方式有()种方式.A、3B、4C、5D、7(正确答案)2、下面是寄存器间接寻址的是().A、MOV A,#58HB、MOV A,28HC、MOV A,R4D、MOV A,@R0(正确答案)3、下面是寄存器寻址的是().A、MOV A,#57HB、MOV A,27HC、MOV A,R3(正确答案)D、MOV A,@R04、下面是立即寻址的是().A、MOV A,#55H(正确答案)B、MOV A,25HC、MOV A,R1D、MOV A,@R05、下面是直接寻址的是().A、MOV A,#56HB、MOV A,26H(正确答案)C、MOV A,R2D、MOV A,@R16、下列指令判断若累加器A的内容不为0就转LP的是().A、JB A,LPB、JZ A,LPC、JNZ A LPD、CJNE A,#0,LP(正确答案)7、下列指令中比较转移指令是指().A、DJNZ Rn,relB、CJNE Rn,#data,rel(正确答案)C、DJNZ direct,relD、JBC bit,re8、要MCS-51系统中,若晶振频率8MHz,一个机器周期等于()μs.A、1.5(正确答案)B、3C、1D、0.59、要用传送指令访问MCS-51片外RAM,它的指令操作码助记符是().A、MOVB、MOVX(正确答案)C、MOVCD、以上都行10、一个EPROM的地址有AO-A11引脚,它的容量为().A、2KBB、4KB(正确答案)C、11KBD、12KB11、一个查表指令要消耗()个机器周期.A、1B、2(正确答案)C、3D、412、一个查表指令要消耗()字节.A、2B、3C、1(正确答案)D、413、一个机器周期含有()个状态周期.A、12B、1C、6(正确答案)D、214、一个机器周期含有()个时钟周期.A、2B、6C、12(正确答案)D、2415、已知(A)=0A5H,R7=0FH,CY=1下列程序执行后SUBB A,R7A=().A、96HB、45HC、85HD、95H(正确答案)16、已知:A=70H,执行指令:DECA后,其结果是().A、A=69HB、A=6FH(正确答案)C、A=0D2HD、以上都不对17、已知:A=D2H,(40H)=77,执行指令:ORL A,40H后,其结果是().A、A=77HB、A=F7H(正确答案)C、A=0D2HD、以上都不对18、已知:A=DBH,R4=73H,CY=0,指令:SUBB A,R4 执行后的结果是().A、A=98HB、A=9AHC、A=68H(正确答案)D、以上都不对19、已知A=87H,(30H)=76H,执行XRL A,30H后,其结果为().A、0F1H(正确答案)B、65HC、DEHD、EFH20、已知A=0FFH,(30H)=00H,执行XRL A,30H后,A结果为:().A、00HB、0FFH(正确答案)C、0FHD、0F0H21、以下哪个是属于单片机系统前向通道的器件().A、A/D转换(正确答案)B、D/A转换C、LED数码管D、继电器22、以下哪一条是位操作指令().A、MOV P1,#0FFHB、MOV C,ACC.1(正确答案)C、CPL AD、POP PSW23以下哪一条指令的写法是错误的().A、MOV DPTR,#3F98HB、MOV R0,#0FEHC、MOV 50H,#0FC3DH(正确答案)D、INC R024、以下指令中,哪条指令执行后使标志位CY清0:().A、MOV A,#00HB、CLR AC、ADD A,#00H(正确答案)D、SETB C25、以下指令中,属于单纯读引脚的指令是().A、MOV P1,AB、MOV P2,AC、MOV C,P1.5(正确答案)D、DJNZ P1,LAB26、MCS—51的立即寻址方式中,立即数前面().A、加前缀“/:”号B、不加前缀号C、应加前缀“@”号D、应加前缀“#”号(正确答案)27、MCS—51寻址方式中,操作数Ri加前缀“@”号的寻址方式是().A、寄存器间接寻址(正确答案)B、寄存器寻址C、基址加变址寻址D、立即寻址28、MCS—51指令MOV R0,#20H中的#20H是指().A、立即数(正确答案)B、内部RAM20HC、一个数的初值D、以上三种均有可能,视该指令的在程序中的作用29、MCS—51指令系统中断返回指令为().A、REIB、RETI(正确答案)C、ENDD、ORG30、PSW中的RS1和RS0用来().A、选择工作寄存器组号(正确答案)B、指示复位C、选择定时器D、选择工作方式31、将内部数据存储器53H单元的内容传送至累加器,其指令是().A、MOV A,53H(正确答案)B、MOV A,#53HC、MOVC A,53HD、MOVX A,#53H32、将外部数据存储器083AH单元的内容传送至累加器,必须使用指令().A、MOVX A,@RiB、MOVX A,@DPTR(正确答案)C、MOVX A,directD、MOVC A,@A+DPTR33、MCS—51指令系统中,指令DAA是().A、除法指令B、加1指令C、加法指令D、十进制调整指令(正确答案)34、若51单片机用晶振频率为24MHz,复位持续时间应该超过().A、1μs(正确答案)B、4μsC、8μsD、0.5us35、8051单片机的堆栈区是向地址()的方向生成的。
变址寻址和相对寻址

变址寻址和相对寻址1.引言1.1 概述概述在计算机科学领域中,寻址是指确定计算机存储器中的特定位置以存取数据的过程。
变址寻址和相对寻址是两种常见的寻址方式。
变址寻址是一种基于地址偏移的寻址方式,它通过在当前地址的基础上加上一个偏移量,来获取目标数据的存储位置。
在变址寻址中,地址的值并不直接对应实际存储位置,而是通过偏移量来确定最终的存储地址。
这种寻址方式常见于许多编程语言和计算机体系结构中。
相对寻址是一种相对于当前指令或数据位置的寻址方式。
在相对寻址中,地址的值表示与当前位置的相对偏移量,因此地址值的大小并不直接对应实际存储位置,而是相对于当前位置的偏移量。
这种寻址方式常用于相对于指令位置的跳转或分支操作。
这两种寻址方式在不同的场景下有着不同的用途和优势。
变址寻址通常用于处理数组和数据结构等情况下,通过变换地址来访问不同的元素或成员。
相对寻址则常用于程序中的控制流操作,如循环、条件判断和函数调用等。
本文主要介绍变址寻址和相对寻址的定义、用途和优势,并对它们进行比较分析。
通过了解这两种寻址方式的特点和适用场景,可以更好地理解计算机寻址的原理和设计思想,并在实际编程和系统设计中做出合理的选择。
在接下来的章节中,我们将首先对变址寻址进行详细介绍,包括其定义和常见的应用场景。
然后,我们将对相对寻址进行介绍,并分析其相对于变址寻址的优势。
最后,我们将对这两种寻址方式进行比较分析,并探讨它们在未来的应用前景。
通过阅读本文,读者将能够全面了解变址寻址和相对寻址的概念和用途,以及它们在计算机系统和编程领域中的重要性和应用前景。
1.2 文章结构文章结构部分的内容可以包括以下几点:文章结构的设计是为了使读者能够清晰地理解和掌握变址寻址和相对寻址的概念、定义、用途、优势以及对比分析等内容。
本文将按照以下结构进行展开:1. 引言:介绍变址寻址和相对寻址的背景和意义,引出本文要讨论的问题。
2. 正文:2.1 变址寻址:2.1.1 定义:详细解释变址寻址的概念、作用和特点。
3-2寻址方式

• 学习单片机的寻址方式及其功能
• 学习如何判断一条是何种寻址方式
1、MCS-51单片机的指令系统有几种寻址方式 2、什么是立即数 3、什么直接寻址 4、直接寻址方式与立即寻址方式有什么区别 5、寄存器寻址、寄存器间接寻址、变址寻址、 位寻址、相对寻址的概念 6、七种寻址方式分别有什么特征
•
指令包含操作码和操作数,有些指令直接 给出参与运算和操作的数,但更多指令只 是以各种方式给出操作数所在的地址。单
片机通过地址信息寻找操作数的方式,称
为寻址方式。寻址方式越多,表明计算机
的功能越强,灵活性越好。
单片机C51的寻址方式
1、寻址方式:寻找操作数或指令的地址的方式。
2、寻址方式的种类:共有7种,
• [例 ] • •
MOV A,#30H MOV DPTR,#1240H 则A和DPTR的内容是多少?
直接寻址
1. 概念:
指令中直接给出操作数所在地址的寻址方式称为直接寻址
2. 寻址空间
片内RAM( 128字节)
如:MOV A,50H ;以50H为地址,寻找到的内容,送给A
• 例如:MOV A,30H 这条指令中操作数就在30H单元中,也 就是30H是操作数的地址,并非操作数。
寄存器寻址、直接寻址、寄存器间接寻址、
立即寻址、 变址寻址、 相对寻址和位寻址。
立即寻址
1、指令中的操作数只是数据,而不是地址,这样的操作数就称
为立即数,立即数直接参与操作,这种寻址方式称为立即寻
址。
2、立即数
大多是一个字节的8位二进制数
标识:#源操作数
3、寻址空间:ROM
• 4、例如:
(1)MOV A,#3AH
作业习题 寻址方式和指令

寻址方式和指令习题一、选择题1、MOVX A,@DPTR指令中源操作数的寻址方式是()(A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址2、ORG 0003HLJMP 2000HORG 000BHLJMP 3000H当CPU响应外部中断0后,PC的值是()(A)0003H (B)2000H (C)000BH (D)3000H3、执行PUSH ACC指令,MCS-51完成的操作是()(A)SP+1 SP (ACC)(SP)(B)(ACC)(SP)SP-1 SP(C)SP-1 SP (ACC)(SP) (D)(ACC)(SP)SP+1 SP4、LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=()(A)2000H (B)2001H (C)2002H (D)2003H5、51执行完MOV A,#08H后,PSW的哪一位被置位()(A)C (B)F0 (C)OV (D)P6、下面条指令将MCS-51的工作寄存器置成3区()(A)MOV PSW,#13H (B)MOV PSW,#18H(C)SETB PSW.4 CLR PSW.3 (D) SETB PSW.3 CLR PSW.47、执行MOVX A,@DPTR指令时,MCS-51产生的控制信号是()(A)/PSEN (B)ALE (C)/RD (D)/WR8、MOV C,#00H的寻址方式是()(A)位寻址(B)直接寻址(C)立即寻址(D)寄存器寻址9、ORG 0000HAJMP 0040HORG 0040HMOV SP,#00H当执行完上面的程序后,PC的值是()(A)0040H (B)0041H (C)0042H (D)0043H10、对程序存储器的读操作,只能使用()(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令二、判断题1、MCS-51的相对转移指令最大负跳距是127B。
()2、当MCS-51上电复位时,堆栈指针SP=00H。
单片机考试判断题

三、判断题1.8051单片机必须使用内部ROM。
(x)2、当EA脚接高电平时,对ROM的读操作只访问片外程序存储器。
(x)3.51单片机只能做控制用,不能完成算术运算。
(x)4.单片机内部RAM和外部RAM是统一编址的,它们的访问指令相同。
(x)5.判断寻址方式(1).MOV A,11H,是直接寻址。
( √ )。
(2).MOV A, R0, 是寄存器寻址。
( √ )。
(3).MOV A,#22H, SUBB A,#11H, Cy = 1 ( x )。
(4).MOV A,@R0 是寄存器间接寻址( √ )。
(5). MOV A,#11H 是立即数寻址(√ )。
6.下面几条指令是否正确:(1)MOV @R1, 80H ( x )(2)INC DPTR ( √ )(3)CLR R0 ( x )(4)MOV @R1,#80H (√)(5)ANL R1,#0FH (x)(6)ADDC A,C (x)(7)XOR P1,#31H ( x )7.判断下面指令的运行结果(1)MOV A,#11HANL A,#FFH(A)= 11H (√ )(2)MOV A,#11HORL A,#FFH(A)= 11H ( X )8.累加器A中存放着一个其值小于等于127的8位无符号数,CY清“0”后执行RLC A指令,则A中数变为原来的2倍。
(√)9.必须有中断源发出中断请求,并且CPU打开中断,CPU才可能响应中断。
(√)10.E2PROM不需紫外线能擦除,如2816在写入时就能自动完成擦除。
(√)11.8155是一种8位单片机。
(x)12.MCS-51的中断源全部编程为同级时,优先级最高的是INT1。
(x )13.指令AJMP的跳转范围是1KB。
(x)14.外部中断0的入口地址是0003H。
(√)15.MCS-51有中断源5个。
( √ )16.A/D转换器的作用是将模拟量转换为数字量;D/A转换器的作用是将数字量转为模拟量。
微机原理试题及答案

第一章1-1选择1.计算机中最常用的字符信息编码是(A )A ASCIIB BCD码C 余3码D 循环码2.要MCS-51系统中,若晶振频率屡8MHz,一个机器周期等于(A ) gsA 1.5B 3C 1D 0.53.MCS-51的时钟最高频率是(A ).A 12MHzB 6 MHzC 8 MHzD 10 MHz4.以下不是构成的控制器部件(D ):A程序计数器、B指令寄存器、C指令译码器、D存储器5.以下不是构成单片机的部件(D )A 微处理器(CPU)、B存储器C接口适配器(I\O接口电路)D打印机6.下列不是单片机总线是(D )A地址总线B控制总线C数据总线D输出总线7.-49D的二进制补码为.(B )A 11101111B 11101101C 0001000D 111011008.十进制29的二进制表示为原码(C )A 11100010B 10101111C 00011101D 000011119.十进制0.625转换成二进制数是(A )A 0.101B 0.111C 0.110D 0.10010选出不是计算机中常作的码制是(D )A 原码B反码C补码 D ASCII1-2填空1.计算机中常作的码制有原码、反码和补码2.十进制29的二进制表示为000111013.十进制数-29的8位补码表示为.111000114.单片微型机CPU、存储器和I\O接口三部分组成.5.若不使用MCS-51片内存器引脚EA必须接地.6.输入输出设备是计算机与外部世界交换信息的载体.7.十进制数-47用8位二讲制补码表示为.110100018.-49D的二讲制补码为.111011019.计算机中最常用的字符信息编码是ASCII10.计算机中的数称为机器数,它的实际值叫一真值。
1-3判断1.我们所说的计算机实质上是计算机的硬件系统与软件系统的总称。
(寸)2.MCS-51 上电复位时,SBUF=00H。
(x )。
SBUF不定。
简述计算机指令的寻址方式

简述计算机指令的寻址方式
计算机指令的寻址方式是指指令通过哪种方式来访问和处理操作数。
常见的计算机指令的寻址方式包括以下几种:
1. 直接寻址:指令中给出了操作数的地址,直接通过该地址访问操作数。
2. 即时寻址:指令直接给出了操作数的值,而不必访问内存。
3. 寄存器寻址:指令中给出了一个寄存器的编号,操作数存储在该寄存器中。
4. 寄存器间接寻址:指令中给出了一个寄存器的编号,该寄存器中存储了操作数在内存中的地址,需要通过寄存器访问内存。
5. 相对寻址:指令中给出了与指令本身相对地址的偏移量,操作数的地址通过指令本身相对地址加上偏移量得到。
6. 基址寻址:指令中给出了一个基址寄存器的编号和一个偏移地址,操作数的地址通过基址寄存器和偏移地址结合得到。
7. 变址寻址:指令中给出了一个变址寄存器的编号和一个偏移地址,操作数的地址通过变址寄存器和偏移地址结合得到。
8. 相对寄存器寻址:指令中给出了一个相对寄存器的编号,操作数的地址通过相对寄存器和指令中的寄存器的值结合得到。
以上是常见的计算机指令的寻址方式,不同的计算机体系架构可能支持不同的寻址方式,寻址方式的选择取决于具体的指令集设计和计算机架构设计。
单片机开卷资料

一、填空(30’) 单片机:(Single-Chip-Microcomputer )又称为单片微型计算机,它是把微型计算机的各个功能部件:中央处理器CPU 、随机储存器RAM 、只读存储器ROM 、定时/计数器及I/O 接口电路等全部集成在一个半导体芯片上,构成一个完整的微型计算机.微机系统:微型计算机系统,又称电脑系统.它是一种能自动、高速、精确地处理信息的现代化电子设备.计算机具有算术运算和逻辑判断能力,并能通过预先编好的程序来自动完成数据的加工处理.单片机的特点:体积小、控制功能强、成本低、易扩展、可靠性好、可以方便地实现多机和分布式控制.CPU 的长度:就CPU 处理字的长度而言,有4位、8位、16位、32位单片机.目前主要的16位单片机有Intel 公司的MCS-96系列,NS 公司的HPC16040系列等,其中MSC-96系列是得到实际应用的最具代表性的产品.32位单片机最具代表的有Intel 公司的MCS-80960系列,Motorola 公司的MC68HC332的32位系列.提供小范围寻址空间(小于8KB )的单片机称为低档8位单片机,串行I/O 接口或A/D 转换以及可进行16KB 以上寻址的单片机称为高档8位单片机. 制造工艺:MCS-51系列单片机采用两种半导体工艺生产,一种是HMOS 工艺,即高速度,高密度短沟道MOS 工艺;另一种是CHMOS 工艺,即互补金属氧化物的HMOS 芯片.CHMOS 是CMOS 和HMOS 的结合,除保持了HMOS 高速度和高密度的特点,还有COMS 低功耗的特点.单片机内部结构:8位CPU,片内时钟振荡器,频率范围1.2MHz~12 MHz;4KB 程序存储器,片内低128B 数据存储器RAM;21个特殊功能寄存器SFR;可寻址外部程序存储器和数据存储器各64KB;4个8位并行I/O 口,一个全双工串口;2个16位计时/计数器;5个中断源,2个中断优先级;位寻址功能,适用于布尔处理的位处理机.ALE 信号:地址锁存允许信号输出端.用于锁存低8位地址信号.周期性地以时钟振荡频率的1/6固定频率向外输出正脉冲信号EA :程序存储器地址允许输入端.当EA 为高电平时,CPU 执行片内程序存储器指令,但当PC 中的值超过0FFFFH 时,将自动转向执行片外程序存储器指令;当EA 为低电平时,CPU 只执行片外程序存储器指令. CPU 结构:运算部件、控制部件.运算部件包括算术逻辑部件ALU 、位处理器、累加器A 、寄存器B 、暂存器及程序状态字寄存器PSW 、十进制调整电路及布尔处理器.CPU 时序:时钟周期=振荡周期(为单片机提供时钟信号的振荡源的周期),状态周期(振荡源信号经二分频后形成的时钟脉冲信号),机器周期(6个状态周期(12个振荡脉冲)组成)、指令周期(执行一条指令所占用的全部时间,通常有1~4个机器周期组成).复位:是单片机的初始化工作,复位后中央处理器CPU 和单片机内的其他功能部件都处在一定的初始状态。
微机原理与接口技术

微机原理与接口技术-学习指南一、填空题1.微机硬件系统包括(微处理器,存储器,输入设备,输出设备,接口电路及其他支持电路)五部分。
2.微机软件系统可分为(系统软件和应用软件)两大类,保证计算机正常工作必不可少的软件是(操作系统)。
3.微机系统总线按功能可分(三)类,它们分别是:(控制总线,数据总线和地址总线)4.8086/8088CPU最大寻址空间是(220=1MB),最大模式的含义是:(系统中有两个或多个微处理器,其中有一个是主处理器8086,其它的处理器称为协处理器,它们协助主处理器工作)。
5.8086/8088CPU中,每段最大地址空间为(216=64KB),段在内存的起始位置由(段寄存器)确定,20位物理地址的计算公式是:(段地址*16+段内偏移地址)6.8086/8088CPU中,设置指令预取队列的目的是:(将取指令和执行指令这两个操作分别由两个独立的功能单元并行进行,提高微处理器的指令执行速度和总线利用率。
)。
7.8086/8088CPU中的内部寄存器按功能可分为(四)类,它们分别是:(通用寄存器,段寄存器,指令指针寄存器和标志寄存器)8.存贮器的容量可表示为(字节数),衡量存贮器性能的主要参数是:(存储容量,读写速度,非易失性和可靠性)。
9.根据信息存取方式,半导体存贮器可分为(随机存取存储器)和(只读存储器)。
10.静态RAM的基本信息存贮单元是(触发器),动态RAM的基本信息存贮单元是(带驱动晶体管的电容)。
11.地址译码方式有(全译码法)和(部分译码法),前者利用(全部地址总线)唯一确定一个存贮单元,后者一个芯片占用(多个)芯片地址空间。
12.位扩展采用芯片组法,芯片组的连线原则是:(入/出数据线分别作为存储器的高低位字节的数据线,并同时完成读写操作)。
13.操作数有(2)种,它们分别是:(数据操作数和转移地址操作数)。
14.转移地址的寻址方式有(4)种,它们分别是:(段内直接寻址,段内间接寻址,段间直接寻址,段间间接寻址)。
8种寻址方式算法

8种寻址方式算法
寻址方式是计算机指令系统中的一种指令,用于指示程序中操作数的有效地址。
以下是8种常见的寻址方式:
1.立即寻址:操作数直接包含在指令中,即操作码后面紧跟的是
操作数本身。
2.寄存器寻址:操作数存储在寄存器中,指令指定寄存器名。
3.间接寻址:操作数的有效地址通过寄存器间接给出,指令指定
寄存器名。
4.相对寻址:操作数的有效地址是程序计数器的当前值与位移量
之和。
5.变址寻址:操作数是变址寄存器的内容加上一个偏移量。
6.基址寻址:操作数的有效地址是基址寄存器和位移量之和。
7.多重寻址:一个指令中同时使用多个操作数地址来源。
8.堆栈寻址:操作数的有效地址是堆栈指针寄存器和位移量之
和。
以上是8种常见的寻址方式,每种方式都有其特定的应用场景,用于满足不同的数据处理需求。
寻址方式和指令系统

寻址⽅式和指令系统《微机原理》复习思考题第3章 8086的寻址⽅式和指令系统3.1 8086汇编语⾔指令的寻址⽅式有哪⼏类?⽤哪⼀种寻址⽅式的指令执⾏速度最快?3.2 直接寻址⽅式中,⼀般只指出操作数的偏移地址,那么,段地址如何确定?如果要⽤某个段寄存器指出段地址,指令中应如何表⽰?3.3 在寄存器间接寻址⽅式中,如果指令中没有具体指明段寄存器,那么,段地址如何确定?3.4 ⽤寄存器间接寻址⽅式时,BX,BP,SI,DI分别针对什么情况来使⽤?这四个寄存器组合间接寻址时,地址是怎样计算的?举例进⾏说明。
3.5 设DS=2100H,SS=5200H,BX=1400H,BP=6200H,说明下⾯两条指令所进⾏的具体操作:MOV BYTE PTR [BP], 2000MOV WORD PTR [BX], 20003.6 使⽤堆栈操作指令时要注意什么问题?传送指令和交换指令在涉及内容操作数时分别要注意什么问题?3.7 下⾯这些指令中哪些是正确的?哪些是错误的?如果是错误的,请说明原因。
XCHG CS, AXMOV [BX], [1000]XCHG BX, IPPUSH CSPOP CSIN BX, DXMOV BYTE[BX], 1000MOV CS, [1000]3.8 8086系统中,当对SS和SP寄存器的值进⾏修改时,有什么特殊规定?这样做的原因是什么?[解答] 凡是遇到给SS寄存器赋值的传送指令时,系统会⾃动禁⽌外部中断,等到本条指令和下条指令执⾏之后,⼜⾃动恢复对SS寄存器赋值前的中断开放情况。
这样做是为了允许程序员连续⽤两条指令分别对SS和SP寄存器赋值,同时⼜防⽌堆栈空间变动过程中出现中断。
3.9 以下是格雷码的编码表0——0000 1——0001 2——0011 3——0010 4——01105——0111 6——0101 7——0100 8——1100 9——1101请⽤换码指令和其他指令设计⼀个程序段,实现格雷码往ASCII的转换。
数据的7种寻址方式

第3章数据的7种寻址方式,包括指令的格式,功能,指令的正误判断。
20位物理地址的生成:将段地址添上一个0(十六进制),再加上偏移地址。
数据传送指令:MOV PUSH,POP,XCHG,LEA,IN,OUT1、MOV ,注意指令的正误判断,可从3点入手。
(1)指令格式(2)数据大小是否超出范围(3)类型是否匹配。
通常,不能在两个内存单元间直接传送,段寄存器间不能直接传送,立即数不能直接传送到段寄存器,不能用CS作目的操作数。
2、PUSH 入栈指令,先减后压。
不能对字节进行压栈操作。
3、POP 出栈指令,先弹后加,将栈顶的一个字弹出到目的操作数。
4、EXCHG 交换指令。
不能在两个内存单元间直接交换。
5、LEA 取有效地址指令。
6、IN 输入指令,当端口大于255时,要用DX来表示端口号。
7、OUT 输出指令,当端口大于255时,要用DX来表示端口号算术运算等指令1、ADD AL,[1000H]例:AL=85H,BL=79H,执行指令ADD AL,BLAL= 0FEH ,CF= 0 ,OF= 02、SUB AL,BL3、INC [1000H] ERRORINC BYTE PTR [1000H]INC WORD PTR [1000H]该指令不影响CF标志4、DEC [1000H] ERRORDEC BX5、NEG AL 求相反数例:Y=X,X>=0; Y=|X|,X<0,编写程序段实现该功能MOV AL,XCMP AL,0JGE Y1NEG ALY1:MOV Y,ALHLT编程序的思路:取数据,在CPU里做运算,存数据;如果数据较多,通常要设指针,再取数据,取完数据后,修改地址指针,又取下一个数据,循环下去。
6、CMP AL,BL无符号数,A表示大,B表示小,E表示相等。
有符号数,G表示大,L表示小,E表示相等。
例:CMP AX,BXJGE NEXTXCHG AX,BXNEXT: CMP AX,CXJGE DONEXCHG AX,CXDONE:该程序段的功能是找AX,BX,CX中最大的数,并把最大的数放在AX中。
计算机指令寻址总结,寻址方式的判断总结.docx

计算机指令寻址总结,寻址⽅式的判断总结.docx寻址⽅式的判断总结微机寻址⽅式总结MCS51: 每⼀种计算机都具有多种寻址⽅式。
寻址⽅式的多少是反映指令系统优劣的主要指标之⼀。
MCS51单⽚机有7种寻址⽅式。
1、⽴即寻址 2、直接寻址 3、REG寻址 4、REG间址 5、变址寻址 6、相对寻址 7、位寻址 ⽴即寻址: 1、操作数包含在指令字节中。
紧跟在操作码后⾯,存放于ROM中。
例:MOVA,#05H; 2、跟在指令操作码后⾯的数就是参加运算的数,称该操作数为⽴即数。
直接寻址: 1、在指令中直接给出操作数的地址,这种寻址⽅式就属于直接寻址⽅式。
在这种⽅式中,指令的操作数部分直接是操作数的地址。
例:MOVA,32H; 2、在MCS-51单⽚机指令系统中,直接寻址⽅式中可以访问2种存储器空间: (1)RAM的低128个字节单元。
(2)特殊功能寄存器。
特殊功能寄存器只能⽤直接寻址⽅式进⾏访问。
寄存器寻址: "寄存器寻址"是在指令中给出存放操作数的寄存器名称,被寻址寄存器中的内容就是操作数。
由于这种寻址是在CPU内部的访问,所以运算速度最快。
1、在该寻址⽅式中,参加操作的数存放在寄存器⾥。
例:MOVA,R7; 2、寄存器包括8个⼯作寄存器R0~R7,累加器A,寄存器B、数据指针DPTR。
寄存器间接寻址: "寄存器间接寻址"是以指令中指定寄存器的内容作为操作数的地址,再以该地址对应单元中的内容作为操作数。
为了区别于寄存器寻址,因此在寄存器间接寻址中的寄存器名称前加地址符号"@"。
在寄存器间接寻址中,当访问内部RAM低128B空间、 或者访问外部RAM的页内256B空间时,⽤当前组⼯作寄存器R0或R1作地址指针,⽽当访问外部RAM的整个64KB空间时,⽤DPTR作地址指针。
例如:MOVA,@R1 1、在这种寻址⽅式中,寄存器的内容为操作数的地址。
10种寻址方式的定义

10种寻址方式的定义寻址方式是指计算机系统用来定位并访问存储单元或数据的方式。
以下是常见的一些寻址方式:1.直接寻址(Direct Addressing):直接使用给定地址或指针来访问内存中的数据或指令。
2.间接寻址(Indirect Addressing):使用存储在一个地址或寄存器中的地址来访问数据,间接地定位到实际的数据存储位置。
3.相对寻址(Relative Addressing):使用相对于当前指令或指针的地址偏移量来定位数据,常用于访问数组或其他数据结构的元素。
4.基址寻址(Base Addressing):使用一个基址寄存器和一个偏移量来计算地址,定位到存储单元。
5.索引寻址(Index Addressing):通过一个索引寄存器的值和一个基地址来计算地址,以定位到数组或表中的元素。
6.变址寻址(Displacement Addressing):通过将寄存器中的地址与立即数相加或相减来计算目标地址。
7.间接相对寻址(Indirect Relative Addressing):通过使用相对地址来访问存储单元,但是该地址指向的是另一个存储位置的地址。
8.堆栈寻址(Stack Addressing):使用栈指针来访问栈中的数据,通常用于函数调用和返回时保存和恢复数据。
9.寄存器寻址(Register Addressing):直接使用CPU内部的寄存器地址来访问数据或指令。
10.变量寻址(Variable Addressing):在编程语言中,通过使用变量名来访问和操作变量的值。
这些寻址方式在不同的计算机体系结构和编程范式中有着不同的应用和特点,用于在计算机系统中有效地定位和访问数据。
51单片机寻址方式

51单片机的寻址方式寻址方式:指定操作数所在单元的方法。
在我们学习的8051单片机中,有7种寻址方法,下面我们将逐一进行分析。
一、立即寻址用“#”作前缀MOV A,#20H在这种寻址方式中,指令多是双字节的。
立即数就是存放在程序存储器中的常数,换句话说就是操作数(立即数)是包含在指令字节中的。
例如:MOV A,#3AH这条指令的指令代码为74H、3AH,是双字节指令,这条指令的功能是把立即数3AH送入累加器A中。
MOV DPTR,#8200H在前面学单片机的专用寄存器时,我们已学过,DPTR是一个16位的寄存器,它由DPH及DPL两个8位的寄存器组成。
这条指令的意思就是把立即数的高8位(即82H)送入DPH寄存器,把立即数的低8位(即00H)送入DPL寄存器。
二、直接寻址指令中直接给出操作数的地址。
MOV A,30H;这条指令中操作数就在30H单元中,也就是30H是操作数的地址,并非操作数。
MOV 30H,DPH在80C51单片机中,直接地址只能用来表示内部数据存储器、位地址空间以及特殊功能寄存器,具体的说就是:1、内部数据存储器RAM低128单元。
在指令中是以直接单元地址形式给出。
我们知道低128单元的地址是00H-7FH。
在指令中直接以单元地址形式给出这句话的意思就是这0-127共1 28位的任何一位,例如0位是以00H这个单元地址形式给出、1位就是以01H单元地址给出、127位就是以7FH形式给出。
2、位寻址区。
20H-2FH地址单元。
3、特殊功能寄存器。
专用寄存器除以单元地址形式给出外,还可以以寄存器符号形式给出。
例如下面我们分析的一条指令 MOV IE,#85H 前面的学习我们已知道,中断允许寄存器IE的地址是80H,那么也就是此指令也可以以 MOV 80H,#85H的形式表述。
直接寻址是唯一能访问特殊功能寄存器的寻址方式!大家来分析下面几条指令:MOV 65H,A ;将A的内容送入内部RAM的65H单元地址中MOV A,direct ;将直接地址单元的内容送入A中MOV direct,direct;将直接地址单元的内容送直接地址单元MOV IE,#85H ;将立即数85H送入中断允许寄存器IE前面我们已学过,数据前面加了“#”的,表示后面的数是立即数(如#85H,就表示85H就是一个立即数),数据前面没有加“#”号的,就表示后面的是一个地址地址(如,MOV 65H,A这条指令的65H就是一个单元地址)。
七种寻址方式

七种寻址方式一、立即寻址方式操作数作为指令的一部分而直接写在指令中,这种操作数称为立即数,这种寻址方式也就称为立即数寻址方式。
立即数可以是8位、16位或32位,该数值紧跟在操作码之后。
如果立即数为16位或32位,那么,它将按“高高低低”的原则进行存储。
例如:MOV AH, 80H ADD AX, 1234H MOV ECX, 123456HMOV B1, 12H MOV W1, 3456H ADD D1, 32123456H其中:B1、W1和D1分别是字节、字和双字单元。
以上指令中的第二操作数都是立即数,立即数寻址方式通常用于对通用寄存器或内存单元赋初值。
二、寄存器寻址方式指令所要的操作数已存储在某寄存器中,或把目标操作数存入寄存器。
把在指令中指出所使用寄存器(即:寄存器的助忆符)的寻址方式称为寄存器寻址方式。
指令中可以引用的寄存器及其符号名称如下:8位寄存器有:AH、AL、BH、BL、CH、CL、DH和DL等;16位寄存器有:AX、BX、CX、DX、SI、DI、SP、BP和段寄存器等;32位寄存器有:EAX、EBX、ECX、EDX、ESI、EDI、ESP和EBP等。
寄存器寻址方式是一种简单快捷的寻址方式,源和目的操作数都可以是寄存器。
1、源操作数是寄存器寻址方式如:ADD VARD, EAX ADD VARW, AX MOV VARB, BH等。
其中:VARD、VARW和VARB是双字,字和字节类型的内存变量。
在第4章将会学到如何定义它们。
2、目的操作数是寄存器寻址方式如:ADD BH, 78h ADD AX, 1234h MOV EBX, 12345678H等。
3、源和目的操作数都是寄存器寻址方式如:MOV EAX, EBX MOV AX, BX MOV DH, BL等。
三、直接寻址方式指令所要的操作数存放在内存中,在指令中直接给出该操作数的有效地址,这种寻址方式为直接寻址方式。
在通常情况下,操作数存放在数据段中,所以,其物理地址将由数据段寄存器DS和指令中给出的有效地址直接形成,但如果使用段超越前缀,那么,操作数可存放在其它段。
7 种寻址方式及其基本 指令

7 种寻址方式及其基本指令寻址方式是计算机中指令执行时,计算需要访问内存地址的方式。
不同的寻址方式决定了如何计算出内存地址。
下面将介绍七种常见的寻址方式及其基本指令。
1.直接寻址:直接寻址是最简单的寻址方式,指令中直接给出了要访问的内存地址。
指令的操作数直接指向了存储器中的某个地址。
例如,"LOAD A, 100"表示从地址100加载数据到寄存器A中。
2.立即寻址:立即寻址方式是将常数直接作为指令操作数使用。
指令中给出了要操作的具体数值,而不是内存地址。
例如,"ADD A, 10"表示将寄存器A的值加上10。
3.间接寻址:间接寻址是通过间接寻址寄存器来确定要访问的内存地址。
指令中给出了要操作的寄存器,而不是具体的内存地址。
例如,"LOAD A,(B)"表示从存储器中加载B寄存器中的值作为内存地址,并将该地址处的内容放入寄存器A中。
4.寄存器寻址:寄存器寻址方式是将寄存器作为指令的操作数。
指令中给出了要操作的寄存器,而不是具体的内存地址或数值。
例如,"ADD A, B"表示将寄存器B的值加上寄存器A的值。
5.寄存器间接寻址:寄存器间接寻址方式是通过寄存器中的地址来确定要访问的内存地址。
指令中给出了要操作的寄存器,该寄存器中存储了内存地址。
例如,"LOAD A, (B)"表示从存储器中加载B寄存器中存储的内存地址处的内容,并将该内容放入寄存器A中。
6.相对寻址:相对寻址是通过指令中的相对偏移量来计算要访问的内存地址。
指令中给出了指令执行时相对于当前指令地址的偏移量。
例如,"JUMP 10"表示程序跳转到当前指令地址加上10的位置。
7.基址寻址:基址寻址方式是通过基址寄存器中存储的基地址加上一个偏移量来确定要访问的内存地址。
指令中给出了基址寄存器和偏移量。
例如,"LOAD A, (B+10)"表示从存储器中加载B寄存器中存储的基地址加上10的偏移量处的内容,并将该内容放入寄存器A中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
⑶ 操作数存在于主存中,处理器从主存单元获得这个操作数,这就是存储器寻址方式。汇编指令中,这个存储器操作数以主存地址形式出现。
6. 汇编语句中,还有其他形式出现,需要理解相应操作符才能做出正确判断。
例如,
直接写出变量名实际上 是直接寻址方式;
变量名加减一个常量 还是直接寻址方式;
变量名和一个寄存器 则是寄存器相对寻址方式;
⑴ 有效地址直接给出,存在于指令代码中,就是直接寻址方式。
⑵ 有效地址存在寄存器中,就是通过寄存器的间接寻址方式。
⑶ 有效地址是两部分的和,一部分在寄存器中,另一部分直接给出(称为位移量),这就是寄存器相对寻址方式。
⑷ 有效地址是两部分的和,一部分在基址寄存器中(8086是BX和BP),另一部分在变址寄存器中(8086是SI和DI),这就是基址变址寻址方式。
利用offset后跟一个变量名 则是立即数寻址方式。■ [
⑸ 有效地址是三部分的和,第一部分在基址寄存器中(8086是BX和BP),第二部分在变址寄存器中(8086是SI和DI),第三部分直接给出(称为位移量),这就是相对基址变址寻址方式。
5. 区别各种寻址方式时,注意各自的特点。
只有一个常量, 是立即(数)寻址方式;
MOV DAVL[BP],AX 中目的操作数是寄存器相对寻址,源操作数是寄存器寻址。
8086汇编寻址方式总结
寻址方式是汇编语言的重点和难点。请按如下思路学习:
1. 操作数可以存在什么地方?
⑴ 操作数存在于指令代码中,处理器译码时就立即获得了这个操作数,这就是立即(数)寻址方式。汇编指令中,这个立即数(操作数)以常量形式出现。
3、直接寻址:操作数所在存储器的有效地址在指令中,如:MOV AL,[12H](源操作数)
4、寄存器间接寻址:操作数所在存储器的有效地址在指令中的寄存器中,如:MOV AL,[BX](源操作数)
5、寄存器相对寻址:操作数所在存储器的有效地址为指令中的寄存器加位移量,如:MOV AL,[BX+12H]或MOV AL,DAVL[BP](源操作数)
汇编语言的寻址方式就是寻找操作数所在地址的方法,有七种:立即寻址、寄存器寻址、直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、相对基址变址寻址。
1、立即寻址:操作数在指令中,如:MOV AL,12H(源操作数)
2、寄存器寻址:操作数在指令中的寄存器中,如:MOV AL,BH(源操作数)
2. 8086/8088处理器的主存地址在程序设计时采用逻辑地址。逻辑地址分成段地址和偏移地址两部分。
3. 存储器寻址方式表达存储器地址时,段地址在默认的或段超越前缀指令指定的段寄存器中,偏移地址被称为有效地址EA(Effective Address)。有效地址用中括号括起来。
4. 有多种获得偏移地址的方法,所以存储器寻址方式又分成多种寻址方式。
用中括号括起一个寄存器名和一个常量 是寄存器相对寻址方式;
用中括号括起两个寄存器名 是基址变址寻址方式;
用中括号括起两个寄存器名和一个常量 是相对基址变址寻址方式。
6、基址变址寻址:操作数所在存储器的有效地址为指令中的基址寄存器加变址寄存器,如:MOV AL,[BX+SI]或MOV AL,[BX][SI](源操作数)
7、相对基变址寄存器,再加位移量,如:MOV AL,[BX+SI+12H]或MOV AL,DAVL[BX][SI](源操作数)。
只有一个寄存器名, 是寄存器寻址方式;
其他 则是存储器寻址方式。
用中括号括起一个常量 是直接寻址方式;
用中括号括起一个寄存器名, 是寄存器间接寻址方式;