单片机的指令和寻址方式

单片机的指令和寻址方式

单片机的指令和寻址方式

单片机要正常运作,事先需编制程序,再把程序放入存贮器中,然后由CPU 执行该程序。程序是由指令组成的,指令的基本组成是操作码和操作数。单片机的品种很多,设计时怎样表示操作码和操作数,都有各自的规定,再有指令代码也各不相同,因此,必须对所选单片机的全部指令,也就是所谓指令系统,有足够的了解。各个系列的单片机虽然有不同的指令系统,但也有其共同性。掌握一种单片机的指令系统,对其它系列单片机可以起到触类旁通的作用。MCS-51 单片机应用广泛,派生品种多,具有代表性,所以,这里以MCS-51 系列的指令系统为例说明指令的组成和应用。1、MOV A,#20H 这条指令表示把20H 这个数送入累加器A 中(一个特殊功能寄存器)。

2、ADD A,70H

这条指令表示把累加器A 中的内容(在上例中送入的#20H)和存贮器中

地址为70H 单元中的内容(也是一个数字),通过算术逻辑单元(英文缩写为ALU)相加,并将结果保留在A 中。这里MOV、ADD 等称为操作码,而

A、#20H、70H 等均称为操作数。在汇编语言程序中,操作码通常由英文单词缩写而成,这样有助于记忆,所以又称助记符。如MOV 就是英文单词MOVE 的缩写,含有搬移的意思;而ADD 即为英文单词,其意为相加。因此,对于

略懂英语的用户,掌握单片机指令的含意是较为方便的。操作数有多种表示法,如以上的#20H 称为立即数,即20H 就是真正的操作数。而70H 是存贮器中某个单元的地址,在该单元中,放着操作数(比如说是3AH),ADD A,70H 不是将70H 和A 中的内容相加,而是从存贮器70H 单元中将3AH 取出和A 中的内容相加。由上可知,要找到实际操作数,有时就要转个弯,甚至转几个弯,这个过程称为寻址,MCS-51 共有7 种寻址方式,现介绍如下:

51单片机寻址方式资料讲解

51单片机寻址方式

51单片机的寻址方式 寻址方式:指定操作数所在单元的方法。 在我们学习的8051单片机中,有7种寻址方法,下面我们将逐一进行分析。 一、立即寻址 用“#”作前缀 MOV A,#20H 在这种寻址方式中,指令多是双字节的。立即数就是存放在程序存储器中的常数,换句话说就是操作数(立即数)是包含在指令字节中的。 例如: MOV A,#3AH 这条指令的指令代码为74H、3AH,是双字节指令,这条指令的功能是把立即数3AH送入累加器A中。 MOV DPTR,#8200H在前面学单片机的专用寄存器时,我们已学过,DPTR是一个16位的寄存器,它由DPH及DPL两个8位的寄存 仅供学习与交流,如有侵权请联系网站删除谢谢2

器组成。这条指令的意思就是把立即数的高8位(即82H)送入DPH寄存器,把立即数的低8位(即00H)送入DPL寄存器。 二、直接寻址 指令中直接给出操作数的地址。 MOV A,30H;这条指令中操作数就在30H单元中,也就是30H 是操作数的地址,并非操作数。 MOV 30H,DPH 在80C51单片机中,直接地址只能用来表示内部数据存储器、位地址空间以及特殊功能寄存器,具体的说就是: 1、内部数据存储器RAM低128单元。在指令中是以直接单元地址形式给出。 我们知道低128单元的地址是00H-7FH。在指令中直接以单元地址形式给出这句话的意思就是这0-127共128位的任何一位,例如0位是以00H这个单元地址形式给出、1位就是以01H单元地址给出、12 7位就是以7FH形式给出。 2、位寻址区。20H-2FH地址单元。 仅供学习与交流,如有侵权请联系网站删除谢谢3

寻址方式及指令系统习题与解答

寻址方式及指令系统习题与解答 计算机科学与工程学院黄洪波2012年3月 一、单项选择题 1.设BX=2000H,SI=3000H,指令MOV AX,[BX+SI+8]的源操作有效地址为()。 A.5000H B.5008H C.23008H D.32008H 2.设DS=1000H,ES=2000H,BX=3000H,指令ADD AL,[BX]的源操作数的物理址为()。 A.13000H B.23000H C.33000H D.3000H 3.设DS=2000H,ES=3000H,SI=200H,指令MOV ES:[SI],AL的目的操作数的物理地址为()。 A.20200H B.30200H C.50200H D.200H 4.指令MOV MEM[BX],AX中的MEM是()。 A.原码B.反码C.补码D.移码 5.用来作为寄存器间接寻址的寄存器有()个。 A.8 B.6 C.5 D.4 6.指令MOV [BX+SI],AL中的目的操作数使用()段寄存器。 A.CS B.DS C.SS D.ES 7.指令MOV BX,[BP+5]中的源操作数使用()段寄存器。 A.CS B.DS C.SS D.ES 8.段内间接寻址只改变()中的内容。 A.CS B.IP C.CS和IP D.PSW 9.段间间接寻址只改变()中的内容。 A.CS B.IP C.CS和IP D.PSW 10.下述指令中不改变PSW的指令是()。 A.MOV AX,BX B.AND AL,0FH C.SHR BX,CL D.ADD AL,BL 11.下述指令中不影响CF的指令是()。 A.SHL AL,1 B.INC CX C.ADD [BX],AL D.SUB AX,BX 12.两个整数补码9CH和7AH相加运算后,会产生()。 A.无溢出且无进位B.无溢出但有进位

51单片机的寻址方式

51单片机的寻址方式 学习汇编程序设计,要先了解CPU的各种寻址法,才能有效的掌握各个命令的用途,寻址法是命令运算码找操作数的方法。 指令的寻址方式 MOV P1,#0FFH这条指令,第一个词MOV是命令动词,也就是决定做什么事情的,MOV是MOVE少写了一个E,所以就是“传递”,这就是指令,规定做什么事情,数据传递必须要有一个“源”也就是你要送什么数,必须要有一个“目的”,也就是你这个数要送到什么地方去,显然在上面那条指令中,要送的数(源)就是0FFH,而要送达的地方(目的地)就是P1这个寄存器。 寻址方式:指定操作数所在单元的方法。 注意:源操作数、目的操作数都有各自的寻址方式。掌握指令的7种寻址方式的作用以及不同寻址方式所查询的存储空间及范围,对于常用的指令,能够给出指令的寻址方式。 在我们学习的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寄存器。 这里也特别说明一下:在80C51单片机的指令系统中,仅有一条指令的操作数是16位的立即数,其功能是向地址指针DPTR传送16位的地址,即把立即数的高8位送入DPH,低8位送入DPL。 直接寻址 指令中直接给出操作数的地址。 MOV A,30H MOV 30H,DPH 直接寻址方式是指在指令中操作数直接以单元地址的形式给出,也就是在这种寻址方式中,操作数项给出的是参加运算的操作数的地址,而不是操作数。

单片机寻址方式

单片机寻址方式 寻址方式 指令的一个重要组成部分是操作数,由它指定参与运算的数据或数据所在的存储器单元或寄存器或I/O接口的地址。指令中所规定的寻找操作数的方式就是寻址方式。每一种计算都具有多种寻址方式,寻址方式越多,计算机的功能就越强,灵活性就越大。寻址方式的多少及寻址功能是反映指令系统优劣的主要因素之一。要掌握指令系统也可从寻址方式入手。 MCS-51指令系统的寻址方式有7种:立即寻址(#data)、寄存器寻址(Rn)、间接寻址(@Ri、@DPTR)直接寻址direct、变址寻址(A+)、相对寻址(rel)和特定寄存器寻址(A)。有些书把A当寄存器寻址,把位寻址单独作一种寻址方式,不管怎么分类其目的是为了便于记忆、掌握111条指令。 1.立即寻址(#data) 操作数包含在指令字节中,操作数直接出现在指令中,并存放在程序存储器中,这种方式称为立即寻址。 立即寻址指令的操作数是一个8位或16位的二进制常数,它前面以“#”号标识,例如:ADD A,#56H,即#56H与累加器A(设为31H)内容相加,结果(87H)存于累加器A中。这条指令的机器码为2456H. 2.寄存器寻址(Rn) 由指令指出某一个寄存器中的内容作为操作数,这种寻址方式称为寄存器寻址。在这种寻址方式中,指令的操作码中包含了参加操作的工作寄存器R0~R7的代码(指令操作码字节的低3位指明所寻址的工作寄存器)。例如:ADD A,Rn中的Rn,当n为0、1、2时,机器码分别为28、29、2A. 3.间接寻址(@Ri/@DPTR) 由指令指出某一个寄存器内容作为操作数的地址。这种寻址方式称为寄存器间接寻址。访问外部RAM时,可使用R0,R1或DPTR作为地址指针,寄存器间接寻址用符号“@”表示。 例如:MOV A,@RO(机器码E7)是指:若RO内容为66(内部RAM地址单元66H),而66H单元中内容是27H,则指令的功能是将27H这个数送到累加器A. 4.直接寻址(direct) 在指令中直接给出操作数所在存储单元的地址(一个8位二进制数),称为直接寻址。直接地址用direct表示, 直接寻址方式中操作数存储的空间有三种: (1).内部数据存储器的128个字节单元(00H~7FH) (2).位地址空间(有些书把这种寻址方式单独作一种寻址方式) (3).特殊功能寄存器, 特殊功能寄存器只能用直接寻址方式进行访问。 5.基址加变址寻址(@A+PC/@A+DPTR)

单片机原理及应用总结

单片机原理及应用 第一章绪论 1.什么叫单片机?其主要特点有哪些? 在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。 特点:控制性能和可靠性高、体积小、价格低、易于产品化、具有良好的性价比。 第二章80C51的结构和原理 1.80C51的基本结构 a.CPU系统 ●8位CPU,含布尔处理器; ●时钟电路; ●总线控制逻辑。 b.存储器系统 ●4K字节的程序存储器 (ROM/EPROM/FLASH,可外扩 至64KB); ●128字节的数据存储器(RAM,可 外扩至64KB); ●特殊功能寄存器SFR。 c.I/O口和其他功能单元 ●4个并行I/O口; ●2个16位定时/计数器; ●1个全双工异步串行口; ●中断系统(5个中断源,2个优先 级) 2.80C51的应用模式 a.总线型单片机应用模式 ◆总线型应用的“三总线”模式; ◆非总线型应用的“多I/O”模式 3.80C51单片机的封装和引脚 a.总线型DIP40引脚封装 ●RST/V PO:复位信号输入引脚/备用 电源输入引脚; ●ALE/PROG:地址锁存允许信号 输出引脚/编程脉冲输入引脚;●EA/V PP:内外存储器选择引脚/片 内EPROM编程电压输入引脚;●PSEN:外部程序存储器选通信号 输出引脚 b.非总线型DIP20封装的引脚 ●RST:复位信号输入引脚 4.80C51的片内存储器 增强型单片机片内数据存储器为256 字节,地址范围是00H~FFH。低128字节的配情况与基本型单片机相同。高128字节一般为RAM,仅能采用寄存器间接寻址方式询问。注意:与该地址范围重叠的特殊功能寄存器SFR 空间采用直接寻址方式询问。 5.80C51的时钟信号 晶振周期为最小的时序单位。一个时钟周期包含2个晶振周期。晶振信号12分频后形成机器周期。即一个机器周期包含12个晶振周期或6个时钟周期。 6.80C51单片机的复位 定义:复位是使单片机或系统中的其他部件处于某种确定的初始状态。 a.复位电路 两种形式:一种是上电复位;另一种是上电与按键均有效的复位。 b.单片机复位后的状态 单片机的复位操作使单片机进入初始化状态。初始化后,程序计数器 PC=0000H,所以程序从0000H地址单元开始执行。 特殊功能寄存器复位后的状态是确定的。P0~P3为FFH,SP为07H,SBUF 不定,IP、IE和PCON的有效位为0,其余的特殊功能寄存器的状态为00H.相应的意义为: ●P0~P3=FFH,相当于各口锁存器已 写入1,此时不但可用于输出,也 可以用于输入; ●SP=07H,堆栈指针指向片内RAM

单片机的寻址方式

单片机的寻址方式 指令给出参与运算的数据方式称为寻址方式。换句话说,寻址方式就是寻找确定参与操作的数的真正地址。 在MCS-51 系列单片机的指令系统中寻址方式共有7 种, 立即寻址方式,mcs-51 单片机的一种寻址方式,操作数就写在指令中,和操作码一起放在程序存贮器中。把“#”号放在立即数前面,以表示该寻址方式为 立即寻址,如#20H,立即寻址方式通常用于对通用寄存器或内存单元赋初值。直接寻址方式,指令操作数域给出的是参加运算的操作数地址。在MCS-51 单片机中,直接地址只能用来表示特殊功能寄存器、内部数据寄存器和位地址空间。其中,特殊功能寄存器和位地址空间只能用直接寻址方式访问。 寄存器寻址方式,操作数在寄存器中,由指令操作码中的rrr 三位的值和PSW 中RS1 及RS0 的状态,选中某个工作寄存器区的某个寄存器,然后进行相应的指令操作。指令所要的操作数已存储在某寄存器中,或把目标操作数存入寄存器。把在指令中指出所使用寄存器(即:寄存器的助忆符)的寻址方式 称为寄存器寻址方式。 间接寻址方式,指令操作数给出的是存放操作数地址的寄存器。在MCS-51 指令系统中,可作为寄存器间接寻址的寄存器有工作寄存器R0~R1、堆栈批示器SP 和地址寄存器DPTR。在指令助记符中,间接寻址用符号@来表示。 相对寻址方式,以当前程序计数器pc 的内容为基址,加上指令给出的一字 节补码数(偏移量)形成新的pc 值的寻址方式称为相对寻址。 变址寻址方式,在通用寄存器中,有些寄存器可作为变址寄存器。把变址寄存器的内容(通常是首地址)与指令地址码部分给出的地址(通常是位移量)之和作为操作数的地址来获得所需要的操作数就称为变址寻址。

第六章_寻址方式和指令系统

1

第 6章 寻址方式和汇编指令 第6章
6.1、寻址方式 6.2、汇编语言指令集 6.3、汇编源程序

第 6章 寻址方式和汇编指令 第6章
6 . 1 寻址方式
▲ 汇编指令是可执行指令,每条指令对应一条机器 码,用以控制处理器中的执行部件进行各种操 作。 ▲ TMS320F281X系列的汇编指令有150多条。 ▲ 它们支持各种信号处理运算,同时也提供了应用 中所需要的多级处理和过程控制功能。 ▲ 寻址方式是指寻找指令中操作数地址的方式。

第 6章 寻址方式和汇编指令 第6章
6 . 1 寻址方式
TMS320C28x指令集采用7种存储器寻址方式: ▲ 直接寻址方式 ▲ 堆栈寻址方式 ▲ 间接寻址方式 ▲ 寄存器寻址方式 ▲ 数据/程序/IO空间立即寻址方式 ▲ 程序空间间接寻址 ▲ 字节寻址方式

第 6章 寻址方式和汇编指令 第6章
6 . 1 寻址方式
F2812 的大多数指令利用操作码中的8位字段来选择寻 址方式和对寻址方式进行修改.在 F2812 指令系统中,这个8 位字段用于以下寻址方式: (1)loc16 。 为16位数据访问选择直接/堆栈/间接/寄存器寻址方
式。
(2)loc32 。 为32位数据访问选择直接/堆栈/间接/寄存器寻址方
式。
以上7种寻址方式都与“loc16/loc32”组合起来使用。

第 6章 寻址方式和汇编指令 第6章
6 . 1 寻址方式
寻址方式选择位
由 于 F2812 提 供 了 多 种 寻 址 方 式 , 因 此 用 寻 址 方 式 选 择 位 ( AMODE )来选择8位字段( loc16/loc32 )的解码。该 位属于状态寄存器ST1。寻址方式可以大致归类如下: ▲ AMODE=0——该方式是复位后的默认方式,也是F2812的C/C++编译
器使用的方式。这种方式与C2xLP CPU的寻址方式不完全兼容。数据页指针 偏移量是6位(在C2xLP CPU中是7位),并且不支持所有的间接寻址方式。
▲ AMODE=1——该方式包括的寻址方式完全与C2xLP 器件的寻址方式
兼容。数据页指针的偏移量是7位并支持所有C2xLP 支持的间接寻址方式。
对与loc16或者loc32字段,其可用的寻址方式总结如P375所示

单片机寻址方式

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共128位的任何一位,例如0位是以00H这个单元地址形式给出、1位就是以01H单元地址给出、127位就是以7FH 形式给出。 2、位寻址区。20H-2FH地址单元。 3、特殊功能寄存器。专用寄存器除以单元地址形式给出外,还可以以寄存器符号形式给出。例如下面我们分析的一条指令 MOV IE,#85H 前面的学习我们已知道,中断允许寄存器IE的地址是80H,那么也就是此指令也可以以 MOV 80H,#85H的形式表述。

单片机期末总结材料 最完整版

单片机期末复习总结 1.MCS-51单片机芯片包含哪些主要功能? 8051单片机是个完整的单片微型计算机。芯片部包括下列主要功能部件: 1)8位CPU; 2)4KB的片程序存储器ROM。可寻址64KB程序存储器和64KB外部数据存储器; 3)128B部RAM; 4)21个SFR; 5)4个8位并行I/O口(共32位I/O线); 6)一个全双工的异步串行口; 7)两个16位定时器/计数器;0 8)5个中断源,两个中断优先级; 9)部时钟发生器。 2.MCS-51单片机的4个I/O口在使用上各有什么功能? 1)P0口:8位双向三态端口,外接上拉电阻时可作为通用I/O口线,也可在总线外扩时用作数据总线及低8位地址总线。 2)P1口:8位准双向I/O端口,作为通用I/O口。 3)P2口:8位准双向I/O端口,可作为通用I/O口,也可在总线外扩时用作高8位地址总线。 4)P3口:8位准双向I/O端口,可作为通用I/O口,除此之外,每个端口还有第二功能。实际应用中常使用P3口的第二功能。 P3的第二功能:

【注】:P0口必须接上拉电阻; I/O口准双向:MCS-51单片机I/O口做输入之前要先输出1.这种输入之前要先输出1的I/O口线叫做准双向I/O口,以区别真正的输入,输出的双向I/O口。 3. MCS-51单片机的存储器分为哪几个空间?是描述各空间作用? 8051存储器包括程序存储器和数据存储器,从逻辑结构上看,可以分为三个不同的空间: 1)64KB片片外统一编址的程序存储器地址空间,地址围:0000H~FFFFH,对于8051单片机,其中地址0000H~0FFFH围为4KB的片ROM地址空间,1000H ~ FFFFH为片外ROM 地址空间; 2)256B的部数据存储器地址空间,地址围为00H~FFH,对于8051单片机,部RAM分为两部分,其中地址围00H ~ 7FH(共128B单元)为部静态RAM的地址空间,80H~FFH为特殊功能寄存器的地址空间,21个特殊功能寄存器离散地分布在这个区域;对于8052系列单片机还有地址围为80H~FFH的高128B的静态RAM。 3)64KB的外部数据存储器地址空间:地址围为0000H~FFFFH,包括扩展I/O端口地址空间。

寻址方式和指令系统

《微机原理》复习思考题第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], 2000 MOV WORD PTR [BX], 2000 3.6 使用堆栈操作指令时要注意什么问题?传送指令和交换指令在涉及内容操作数时分别要注 意什么问题? 3.7 下面这些指令中哪些是正确的?哪些是错误的?如果是错误的,请说明原因。 XCHG CS, AX MOV [BX], [1000] XCHG BX, IP PUSH CS POP CS IN BX, DX MOV BYTE[BX], 1000 MOV CS, [1000] 3.8 8086系统中,当对SS和SP寄存器的值进行修改时,有什么特殊规定?这样做的原因是什么?[解答] 凡是遇到给SS寄存器赋值的传送指令时,系统会自动禁止外部中断,等到本条指令和下条指令执行之后,又自动恢复对SS寄存器赋值前的中断开放情况。这样做是为了允许程序员连续用两条指令分别对SS和SP寄存器赋值,同时又防止堆栈空间变动过程中出现中断。 3.9 以下是格雷码的编码表 0——0000 1——0001 2——0011 3——0010 4——0110 5——0111 6——0101 7——0100 8——1100 9——1101 请用换码指令和其他指令设计一个程序段,实现格雷码往ASCII的转换。 3.10 用加法指令设计一个简单程序,实现两个16位十进制数的加法,结果放在被加数单元。 3.11 为什么用增量指令或减量指令设计程序时,在这类指令后面不用进位标志CF作为判断依 据?

(完整版)单片机,第三章答案

思考题: 【3-1 】汇编语言与 C 语言哪种语言的可读性和可移植性强?在对速度和时序敏感的场合应该使用什么语言?对于复杂的单片机系统一般采用 C 与汇编混合编程的形式这句话对吗? 【3-2】二进制机器语言与C和汇编语言两者之间是什么关系?用C或汇编编制的程序在ROM中是 以编译后的二进制代码的形式存放这句话对吗? 【3-3】80C51系列单片机指令的格式包含哪几个部分?各部分之间的间隔符是什么?四个部分中哪 个部分是必须存在的,哪几个部分是可有可无的?标号的格式和代表的意义是? 【3-4 】80C51 系列单片机有哪几种寻址方式? 【3-5】80C51单片机中立即数是存放在ROM中还是RAM中? 【3-6 】判断下列说法是否正确。 (1)立即数寻址方式是被操作的数据本身就在指令中,而不是它的地址在指令中。()(2)指令周期是执行一条指令的时间。() (3)指令中直接给出的操作数称为直接寻址。() (4)内部寄存器Rn (n=0~7)可作为间接寻址寄存器。() 【3-7 】80C51 单片机可以进行直接寻址的区域是? 【3-8 】80C51 单片机可以进行寄存器寻址的范围是? 【3-9 】80C51 单片机可以进行寄存器间接寻址的寄存器是?寻址的范围是? 【3-10 】在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作 数的()。 【3-11 】80C51 单片机变址寻址方式中可以作基址的寄存器是?可以作变址的寄存器是?@A+P,C @A+DPT所找到的操作数是在ROM中对吗? 【3-12】80C51单片机相对寻址改变的是PC的当前值,即改变的CPU执行指令的顺序这句话对否? 【3-13 】若访问特殊功能寄存器,只可以采用那种寻址方式? 【3-14】若访问外部RAM单元,只可以使用哪种寻址方式? 【3-15】若访问内部RAM单元,可使用哪些寻址方式? 【3-16 】若访问内外程序存储器,可使用哪些寻址方式? 【3-17 】80C51 单片机可以进行位寻址的字节单元范围除11 个可位寻址的特殊功能寄存器外还包括 哪个区域?分别找出位地址是00H 08H 22H、7FH D0H E0H对应的字节地址? 【3-18】已知(30H)=40H,(40H)=10H,(10H)=32H,(P1)=0EFH试写出执行以下程序段后有关单元的内容。 MOV R0,#30H MOV A ,@R0 MOV R1,A MOV B ,@Ri MOV @R1,P1 MOV P2,P1 MOV 10H, #20H MOV 30H,10H 【3-19】为什么对基本型的51子系列单片机(片内RAM为128B),其寄存器间接寻址方式(例如MOV A,@R0中,规定R0或R1的内容不能超过7FH? 【3-20】外部RAM数据传送指令有几条?试比较下面每一组中两条指令的区别? ( 1 )MOVX A,@R1 MOVX A ,@DPTR (2)MOVX A,@DPTR MOVX @DPTR, A (3)MOV @R0, A MOVX @R0 , A

单片机总结汇总

单片机总结 第一章 (一)知识点梳理 1.1946年2月15日,第一台电子数字计算机问世。 冯·诺依曼提出“程序存储”和“二进制运算”的思想,构建了计算机经典结构: 存储器输出设备输入设备 控制器运算器 <1>电子计算机经历了五个时代电子管计算机;晶体管计算机;集成电路计算机;大规模集成电路计算机;超大规模集成电路计算机 微处理器+存储器+I/O 接口= 微型计算机 微处理器 地址总线AB 数据总线DB 控制总线CB 存储器I/O接口I/O设备 3.8051内含1个8位CPU、128个字节的RAM、4K字节的ROM,4个8位并行I/O口、1个全双工的串行口、2个16位的定时器/计数器。 4.P3口的第二功能 P3.0——RXD(串行输入口) P3.1——TXD(串行输出口) P3.2——INT0(外部中断0) P3.3——INT1(外部中断1) P3.4——T0(定时器0外部输入)(两个16位可编程定时/计数器,分别由两个8位寄 P3.5——T1(定时器1外部输入)存器拼装而成。最大计数值为216-1,即65535。) P3.6——WR(外部数据存储器写控制) P3.7——RD(外部数据存储器读控制) 5.8051内部CPU是由三部分电路构成:运算器(ALU)、控制器(定时控制部件等),专用寄存器组。其中8051 ALU由1个加法器、2个8位暂存器(TMP1与TMP2)和1个布尔处理器组成。 6.51系列单片机的机器周期时间是固定不变的,均有12个时钟周期T组成,分为6个状态

1个指令周期= 1~4个机器周期;1个机器周期= 6个状态,1个状态= 2个时钟周期7.复位的主要功能: (1).把PC初始化为0000H,使CPU从0000H单元开始执行程序;(2).当程序运行出错或操作错误系统处于死锁状态时,为摆脱困境,也需要按复位键重新启动。 复位后的内部寄存器状态 专用寄存器复位状态专用寄存器复位状态 PC 0000H TMOD 00H Acc (累加器A) 00H TCON 00H B 00H TH0 00H PSW 00H TL0 00H SP 07H TH1 00H 栈底地址固定不变,栈顶地址始终在SP中,可变. DPTR 0000H TL1 00H P0—P3 FFH SCON 00H IP xxx0 0000B SBUF xxxx xxxxB IE 0xx0 0000B PCON 0xxx 0000B 8特殊功能寄存器(SFR) 8051有21个SFR,每个SFR占有一个RAM单元,他们分布在80H~FFH地址范围内。8051的寻址范围是64KB。(0000H-FFFFH) 9.数据存储器:片内存储器——集成在芯片内部 片外存储器——MCS—51只提供地址和控制命令,需要通过外部三总线才能工作。 内部RAM(00H—7FH, 低128B(单元为真正的RAM); 80H—FFH, 高128B(特殊功能寄存器))外部RAM(0000H——FFFFH,64K单元) ROM地址空间(片内4K、片外60K), 0000H-FFFFH; 注意:位地址与字节地址的区别7F---位地址;2FH.7字节地址(见课件) 10.程序状态寄存器:RS1,RS0——寄存器选择位(用于决定8051的8个8位工作寄存器R0~R7在RAM中的实际物理地址)内部RAM 00H—7FH, 低128B RS1,RS0R0~R7的组号R0—R7的物理地址 00000H~07H 01108H~0FH 10210H~17H 11318H~1FH 位寻址存储器(位寻址区):20H——2FH 缓冲存储器(堆栈区):30H——7FH 11单片机定义:即单片微型计算机,由单块集成电路芯片构成,内部集成了计算机的基本功能部件CPU、存储器和I/O接口电路。 12单片机优势:单片机体积小、价格低、可靠性高,其非凡的嵌入式应用形态对于满足嵌入式应用需求具有独特的优势。

8051寻址方式总结

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, @R1MOVX @DPTR, A 5.变址寻址:以基址寄存器PC 或者DPTR 与变址寄存器A 中的内容之和作 为操作数的地址变址寻址只能对程序存储器中的数据进行寻址,由于程序存储 器是只读的,因此变址寻址只有读操作,指令上采用MOVCMOVC A, @A+DPTRMOVC A, @A+PC 6.相对寻址:用于修改PC 的值,使得PC 加上指令中给出的一字节的偏移量 由于转移指令有两字节和三字节这两种形式,因此偏移量的范围分别为- 126~+129 和-125~+130SJMP 80H

MCS-51单片机的寻址方式和指令系统

MCS-51单片机指令系统与汇编语言程序设计 伪指令............................................. (2) MCS-51单片机的寻址方式 (4) MCS-51单片机的指令系统 (7) 数据传送指令 (8) 算数运算指令 (10) 逻辑运算及移位指令 (12) 控制转移指令 (13) 位操作指令 (18)

指令格式:指令的表示方式称为指令格式,它规定了指令的长度和内部信息的安排。完整的指令格式如下: [标号:] 操作码 [操作数] [,操作数] [;注释] 标号: 代表指令的具体地址 操作码: 又称助记符,英文缩写 操作数: 操作数中常数可以用二、八、十、十六进制表示,如果用十六进制表示,最高位用A以上的数开头时,前面须加0,否则机器不识别 注释:增加程序的可读性 伪指令 (1)定位伪指令ORG 格式:ORG n 其中:n通常为绝对地址,可以是十六进制数、标号或表达式。 功能:规定编译后的机器代码存放的起始位置。在一个汇编语言源程序中允许存在多条定位伪指令,但每一个n值都应和前面生成的机器指令存放地址不重叠。 例如程序:ORG 1000H START:MOV A,#20H MOV B,#30H ┇ (2)结束汇编伪指令END 格式:[标号:] END [表达式] 功能:放在汇编语言源程序的末尾,表明源程序的汇编到此结束,其后的任何内容不予理睬。 (3)赋值伪指令EQU 格式:字符名称x EQU 赋值项n 功能:将赋值项n的值赋予字符名称x。程序中凡出现该字符名称x就等同于该赋值项n,其值在整个程序中有效。赋值项n可以是常数、地址、标号或表达式。在使用时,必须先赋值后使用。 “字符名称”与“标号”的区别是“字符名称”后无冒号,而“标号”后面有冒号。 (4)定义字节伪指令DB

第三章寻址方式与指令系统

第三章寻址方式与指令系统 一:选择题 1:下列指令中正确的是() A:MOV BX,AL B:MOV BL,AX C:MOV BL,AL D:MOV BL,BP 2:下列指令不合法的指令是() A:IN AX,03F8H B:MOV AX,BX C:REP CMPSB D:SHR BX,CL 3:下列指令中正确的是() A:MOV 100,CL B:MOV CL,100H C:MOV CL,1000 D:MOV CL,100 4:下列指令中正确的是() A:MOV SS,2400H B:MOV 2400H,SS C:MOV SS,DS D:MOV SS,SP 5:下列指令中正确的是() A:XCHG AH,AL B:XCHG AL,20H C:XCHG AX,DS D:XCHG[BX],[20H] 6:执行完下列程序后,BX寄存器的内容是() MOV CL,3 MOV BX,0B7H ROL BX,1 ROR BX,CL A:002DH B:00EDH C:C02DH D:000DH 7:在程序运行过程中,确定下一条指令的物理地址的计算表达式是() A:CS×16+IP B:BX×16+DI C:SS×16+SP D:ES×16+SI 8:寄存器间接寻址方式中,操作数在()中 A:通用寄存器B:堆栈C:主存单元D:段寄存器 9:下列指令,指令()先执行CX-1赋给CX操作,然后再根据CX的值决定是否转移、循环或进行重复操作。 A:JNC B:REP C:JCXZ D:LOOP 10:运算型指令的寻址和控制转移型指令的寻址,其不同点在于() A:前者取操作数,后者决定程序的转移地址B:后者取操作数,前者决定程序的转移地址 C:两者都是取操作数D:两者都是决定程序的转移地址 11:在PC系列机中调试汇编语言程序的工具是DEBUG。用DEBUG调试程序时,可以在目标程序中设断点,或用单步跟踪来找出程序中的毛病。断点只能在RAM中设置,不能在ROM中设置,这是因为() A:ROM不能存放汇编程序B:ROM中数据不能修改 C:ROM不能放入断点中断指令D:ROM不能保护断点 12:DEBUG调试工具是汇编语言最有力的调试手段,当用D命令时显示的结果如下: 0000:0080 72 10 A7 00 7C 10 A7 00—4F 03 62 06 8A 03 62 06 0000:0090 17 03 62 06 86 10 A7 00—90 10 A7 00 9A 10 A7 00 INT 21H是最常用的DOS中断,试确定INT 21H的中断向量为 A:1072H:00A7H B:7C10H:A700H C:00A7H:107CH D;107CH:00A7H 13:设AL和BL是带符号数,当AL≤BL时转至NEXT处,在CMP AL,BL指令后应选择正确的条件指令是 A:JBE B:JNG C:JNA D:JNLE 二:填空题 1:若累加器AX中的内容为4142H,执行指令CMP AX,4041H后,(AX)= 。执行SUB AX,4041H 后,(AX)= 。 2:用CBW指令生成双倍长度的被除数存放在。用CWD指令生成双倍长度的被除数存放在。

单片机简答题教学内容

单片机简答题

1.何谓单片机?单片机与一般微型计算机相比,具有哪些特点? 答:单片机是在一块集成电路上把CPU、存储器、定时器/计数器及多种形式的I/O接口集成在一起而构成的微型计算机。它与通用微型计算机相比,具有如下特点: (1)单片机的程序存储器和数据存储器是分工的,前者为ROM,后者为RAM; (2)采用面向控制的指令系统,控制功能强; (3)多样化的I/O接口,多功能的I/O引脚; (4)产品系列齐全,功能扩展性强; (5)功能是通用的,像一般微处理机那样可广泛地应用在各个方面。 2 单片机主要应用在哪些领域? 答:单片机的应用范围很广泛,诸如智能化家用电器、仪器仪表、工业控制、计算机外部设备、智能机器人、电信及导航等方面。 3 在各种系列的单片机中,片内ROM的配置有几种形式?用户应根据什么原则来选用? 答:各种类型的单片机片内程序存储器的配置形式主要有以下几种形式:(1)掩膜(Msak)ROM型单片机:内部具有工厂掩膜编程的ROM,ROM 中的程序只能由单片机制造厂家用掩膜工艺固化,用户不能修改ROM 中的程序。例如:MCS—51系列的8051。 掩膜ROM单片机适合于大批量生产的产品。用户可委托芯片生产厂家采用掩膜方法将程序制作在芯片的ROM。

(2)EPROM型单片机:内部具有紫外线可擦除电可编程的只读存储器,用户可以自行将程序写入到芯片内部的EPROM中,也可以将EPROM中 的信息全部擦除。擦去信息的芯片还可以再次写入新的程序,允许反复 改写。例如:MCS—51系列的8751。 EPROM型单片机使用比较方便,但价格较高,适合于研制产品或结构要求简单的小批量产品。 (3)无ROM型单片机:内部没有程序存储器,它必须连接程序存储器才能组成完整的应用系统。例如:MCS—51系列的8031。 无ROM型单片机价格低廉,用户可根据程序的大小来选择外接程序存储器的容量。这种单片机扩展灵活,但系统结构较复杂。 (4)E2ROM型单片机:内部具有电可擦除叫可编程的程序存储器,使用更为方便。例如:MCS—51的派生型89C51单片机。 (5)OTP(One Time Programmable)ROM单片机:内部具有一次可编程的程序存储器,用户可以在编程器上将程序写入片内程序存储器中,程序写入 后不能再改写。例如:NEC公司的μPD75P308GF—3B9。这种芯片的价格也较低。 4.控制器的组成和作用 答:控制器:由程序计数器、指令寄存器、指令译码器、时序发生器和操作控制器等组成。用来协调指挥计算机系统的操作。 5.微型计算机组成

单片机总结

单片机总结 第一章 (1)知识点梳理 1.1946年2月15日,第一台电子数字计算机问世。 冯·诺依曼提出“程序存储”和“二进制运算”的思想,构建了计算机经典结构: <1>电子计算机经历了五个时代电子管计算机;晶体管计算机;集成电路计算机;大规模集成电路计算机;超大规模集成电路计算机 微处理器+存储器+I/O接口= 微型计算机 3.8051内含1个8位CPU、128个字节的RAM、4K字节的ROM,4个8位并行I/O口、1个全双工的串行口、2个16位的定时器/计数器。 4.P3口的第二功能 P3.0——RXD(串行输入口) P3.1——TXD(串行输出口) P3.2——INT0(外部中断0) P3.3——INT1(外部中断1) P3.4——T0(定时器0外部输入)(两个16位可编程定时/计数器,分别由两个8位寄 P3.5——T1(定时器1外部输入)存器拼装而成。最大计数值为216-1,即65535。) P3.6——WR(外部数据存储器写控制) P3.7——RD(外部数据存储器读控制) 5.8051内部CPU是由三部分电路构成:运算器(ALU)、控制器(定时控制部件等),专用寄存器组。其中8051 ALU由1个加法器、2个8位暂存器(TMP1与TMP2)和1个布尔处理器组成。 6.51系列单片机的机器周期时间是固定不变的,均有12个时钟周期T组成,分为6个状态1个指令周期 = 1~4个机器周期;1个机器周期 = 6个状态,1个状态 = 2个时钟周期 7.复位的主要功能: (1).把PC初始化为0000H,使CPU从0000H单元开始执行程序;(2).当程序运行出错或操作错误系统处于死锁状态时,为摆脱困境,也需要按复位键重新启动。 复位后的内部寄存器状态 专用寄存器复位状态专用寄存器复位状态

第3章 寻址方式和指令系统作业

一、选择题 1.寄存器间接寻址方式中,要寻找的操作数位于( B )中。 A.通用寄存器 B.内存单元 C.段寄存器 D.堆栈 2.下列指令中正确的是( C )。 A.MOV AL,BX B.MOV CS,AX C.MOV AL,CL D.MOV [BX],[SI] 3.下列指令中错误的是( C )。 A.MOV AX,1234H B.INC BX C.SRL AX,2 D.PUSH DX 4.设(SP)=1010H,执行POP AX后,SP中的内容为( B )。 A.1011H B.1012H C.1OOEH D.100FH 5.给定(AL)=80H,(CL)=02H,指令SHR AL,CL执行后的结果是(B )。 A.(AL)=40H B.(AL)=20H C.(AL)=C0H D.(AL)=E0H 6.将AX清零并使CF位清零,下面指令错误的是( A )。 A.SUB AX,BX B.XOR AX,AX C.MOV AX,0 D.AND AX,0OOOH 二、填空题 2.寻址的含义是指_寻找操作数的过程_;8086指令系统的寻址方式按照大类可分为_与操作数有关的寻址方式、与I/O端口有关的寻址方式_;其中寻址速度最快的是_立即数寻址_。 4.堆栈是一个特殊的_存储器区域_,其操作是以_2字节单元_为单位按照__先进后出_原则来处理;采用_SP_指向栈顶地址,入栈时地址变化为_SP<=(SP)-2_。 5.I/O端口的寻址有_直接端口寻址和间接端口寻址_两种方式;采用8位数时,可访问的端口地址为_0~255_;采用16位数时,可访问的端口地址为_0~65535_。 三、分析计算题 1.指出如下指令中源操作数和目的操作数的寻址方式: (1)MOV AX,100H (2)MOV CX,AX (3)ADD [SI],1000 (4)SUB BX,[SI+100] (5)MOV [BX+300],AX (6)AND BP,[DI] 解: 源操作数的寻址方式目的操作数的寻址方式 (1)MOV AX,100H 立即数寄存器 (2)MOV CX,AX 寄存器寄存器 (3)ADD [SI],1000 立即数寄存器间接 (4)SUB BX,[SI+100] 变址寄存器 (5)MOV [BX+300],AX 寄存器变址 (6)AND BP,[DI] 寄存器间接寄存器 2.分析如下指令的正误,对错误指令说明出错误原因并加以收正: (1)MOV [1200],23H (2)MOV 1020H,CX (3)MOV [1000H],[2000H] (4)MOV IP,O00H

单片机课后题

一、选择题 1、执行下列3条指令后,30H单元的内容是( C ) MOV R0,#30H MOV 40H,#0EH MOV @R0,40H A)40H B)30H C)0EH D)FFH 2、在堆栈中压入一个数据时(B) A)先压栈,再令SP+1 B)先 令SP+1,再压栈 C)先压栈,再令SP-l D)先 令SP-1,再压栈 3、在堆栈操作中,当进栈数据全部弹出后,这时的SP应指 向 A A)栈底单 元B)7FH C)栈底单元地址加 1 D)栈 底单元地址减l 4、指令MOVC A,@A+PC源操作数的寻址方式是 D A)寄存器寻址方式B) 寄存器间接寻址方式 C)直接寻址方式D) 变址寻址方式 5、ANL 20H,#30H指令中,源操作数的寻址方式是 A A)立即寻址方式B) 直接寻址方式 C)位寻址方 式D)相对寻址方式 6、ANL C,/30H指令中,源操作数的寻址方式是 C A)立即寻址方式 B) 直接寻址方式 C)位寻址方 式 D)相对寻址方式 7、Jz rel指令中,操作数rel的寻址方式是 D A)立即寻址方式 B) 直接寻址方式 C)位寻址方 式 D)相对寻址方式 8、Jz rel指令中,是判断 A 中的内容是否为0。 A) A B) B C) C D)PC 9、MOVX A,@DPTR指令中源操作数的寻址方式是(B) A)寄存器寻址(B)寄存器间接寻址(C)直接寻址 (D)立即寻址 10、下面条指令将MCS-51的工作寄存器置成3区(B) A)MOV PSW,#13H (B)MOV PSW,#18H 11、MOV C,00H指令中源操作数的寻址方式是(A) A)位寻址 B)直接寻址 C)立即 寻址 D)寄存器寻址

相关文档
最新文档