第4章 汇编语言程序设计知识李朝青--单片机原理及接口技术 北京航空航天大学出版社(第3版)ppt课件
单片机原理及接口技术-习题答案第四版李朝青(修订后)
单片机原理及接口技术-习题答案第四版李朝青(修订后)以下是为大家整理的单片机原理及接口技术-习题答案第四版李朝青(修订后)的相关范文,本文关键词为单片机,原理,接口,技术,习题,答案,第四,版李,朝青,修订,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在教育文库中查看更多范文。
单片机原理及接口技术课后习题答案(第四版)李朝青第一章1.什么是微处理器(cpu)、微机和单片机?答微处理器本身不是计算机,但它是小型计算机或微机的控制和处理部分。
微机则是具有完整运算及控制功能的计算机,除了微处理器外还包括存储器、接口适配器以及输入输出设备等。
单片机是将微处理器、一定容量的RAm、Rom以及I/o口、定时器等电路集成在一块芯片上,构成的单片微型计算机。
2.单片机具有哪些特点(1)片内存储容量越来越大。
(2抗干扰性好,可靠性高。
(3)芯片引线齐全,容易扩展。
(4)运行速度高,控制功能强。
(5)单片机内部的数据信息保存时间很长,有的芯片可以达到100年以上。
3.微型计算机怎样执行一个程序?答:通过cpu指令,提到内存当中,再逐一执行。
4.微型计算机由那几部分构成?微处理器,存储器,接口适配器(即I/o接口),I/o设备第二章1.89c51单片机内包含哪些主要逻辑功能部件?答:80c51系列单片机在片内集成了以下主要逻辑功能部件:(l)cpu(中央处理器):8位(2)片内RAm:128b(3)特殊功能寄存器:21个(4)程序存储器:4Kb(5)并行I/o口:8位,4个(6)串行接口:全双工,1个(7)定时器/计数器:16位,2个(8)片内时钟电路:1个2.89c51的eA端有何用途?答:/eA端接高电平时,cpu只访问片内并执行内部程序,存储器。
/eA端接低电平时,cpu只访问外部Rom,并执行片外程序存储器中的指令。
/eA端保持高电平时,cpu执行内部存储器中的指令。
单片机原理与接口技术第4章 MCS-51汇编语言程序设计
02:18
单片机原理与接口技术(第2版).李晓林.电子工业出版社
返回目录
4.1.3 汇编语言的规范
(3)等值伪指令EQU
---伪指令EQU
格式:字符名称 EQU 操作数
功能:将操作数赋予规定的字符名称。 如: AB DELY EQU 16H EQU 1234H MOV A, AB LCALL DELY
4.1.2 程序设计的方法
4.1.3 汇编语言的规范
4.2.3 循环结构程序
4.2.4 查表程序
4.1.4 汇编语言程序编辑
和汇编
4.2.5 子程序
4.3 汇编语言程序设计实例 习题与思考题
4.2 结构化程序设计方法
02:18 3
单片机原理与接口技术(第2版).李晓林.电子工业出版社
返回目录
4.1 程序设计概述
和子程序等。
02:18 4
单片机原理与接口技术(第2版).李晓林.电子工业出版社
返回目录
4.1.1 程序设计的步骤
MCS-51单片机提供111条指令,它们以指令
助记符的形式出现,指令助记符的集合称为
汇编语言。
由汇编语言编写的程序称为汇编语言源程序。
汇编语言源程序必须翻译成机器代码组成的
目标程序,机器才能执行。用汇编语言编制
单片机原理与接口技术(第2版).李晓林.电子工业出版社
返回目录
4.2 结构化程序设计方法
----程序结构
• 在汇编语言程序设计中,普遍采用结构化程序
设计方法。采用这种设计方法的主要依据是任
何复杂的程序都可由顺序结构、分支结构及循 环结构程序等构成。 • 每种结构只有一个入口和出口,整个程序也只 有一个入口和出口。
单片机原理及接口技术 李朝青 第4版
3、CPU中的主要寄存器
1)累加器(A) 2)数据寄存器(DR) 3)指令寄存器(IR) 4)指令译码器(ID) 5)程序计数器(PC) 6)地址寄存器(AR)
单片机原理及接口技术
1)累加器(A)
累加器是微处理器中最繁忙的寄存器。 在算术和逻辑运算时,它具有双重功能:
运算前,用于保存一个操作数; 运算后,用于保存所得的和、差或逻辑运算结果。
例如: 两个数(7和9)相加,在相加之前,操作数
9放在累加器中,7放在数据寄存器中,执行两 数相加运算的控制线发出“加”操作信号,ALU 即把两个数相加并把结果(16)存入累加器, 取代累加器前面存放的数9。
单片机原理及接口技术
3)ALU的两个主要的输入来源
输入来源
累加器 数据寄存器
单片机原理及接口技术
设计者:刘艳玲
单片机原理及接口技术
第1章 微机基础知识
1.1 微处理器、微机和单片机的概念 1.2 微机的工作过程 1.3 常用数制和编码 1.4 数据在计算机中的表示 1.5 89C51/S51单片机 1.6 思考题与习题
单片机原理及接口技术
§1.1 微处理器、微机和单片机的概念
§1.1.1 微处理器(机)的组成 §1.1.2 存储器和输入输出接口
单片机原理及接口技术
5)程序计数器(PC)
通常又称为指令地址计数器。 在程序开始执行前,必须将其起始地址,即程序的
第一条指令所在的内存单元地址送到PC。
当执行指令时,CPU将自动修改PC的内容,使之总是保 存将要执行的下一条指令的地址。
由于大多数指令都是按顺序执行的,所以修改的过程 通常是简单的加1操作。
1)运算器的组成
运算器
单片机原理与接口技术课后习题答案_李朝青
第一章1.什么是微处理器(CPU)、微机和单片机?答:微处理器本身不是计算机,但它是小型计算机或微机的控制和处理部分。
微机则是具有完整运算及控制功能的计算机,除了微处理器外还包括存储器、接口适配器以及输入输出设备等。
单片机是将微处理器、一定容量的RAM、ROM以及I/O口、定时器等电路集成在一块芯片上,构成的单片微型计算机。
2.单片机具有哪些特点(1)片内存储容量越来越大。
(2抗干扰性好,可靠性高。
(3)芯片引线齐全,容易扩展。
(4)运行速度高,控制功能强。
(5)单片机内部的数据信息保存时间很长,有的芯片可以达到100年以上3.微型计算机怎样执行一个程序?答:通过CPU指令,提到内存当中,再逐一执行。
5.什么是嵌入式系统?他有哪些类型?为什么说单片机是典型的嵌入式系统?答;嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
它有嵌入式微处理器、嵌入式微控制器、嵌入式DSP处理器、嵌入式片上系统等。
嵌入式系统的出现最初是基于单片机的。
它从体系结构到指令系统都是按照嵌入式应用特点专门设计的,能最好的满足面对控制对象,应运系统的嵌入、现场的可靠运行以及非凡的控制品质要求。
因此,她是典型的嵌入式系统。
第二章1.89C51单片机内包含哪些主要逻辑功能部件?答:80C51系列单片机在片内集成了以下主要逻辑功能部件:(l)CPU(中央处理器):8位(2)片内RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB(5)并行I/O口:8位,4个(6)串行接口:全双工,1个(7)定时器/计数器:16位,2个(8)片内时钟电路:1个2.89C51的EA端有何用途?答:/EA端接高电平时,CPU只访问片内flash Rom并执行内部程序,存储器。
/EA端接低电平时,CPU 只访问外部ROM,并执行片外程序存储器中的指令。
单片机原理及接口技术-习题答案第四版李朝青(修订后)
单片机原理及接口技术-习题答案第四版李朝青(修订后)单片机原理及接口技术课后习题答案(第四版)李朝青第一章1.什么是微处理器(CPU)、微机和单片机?答微处理器本身不是计算机,但它是小型计算机或微机的控制和处理部分。
微机则是具有完整运算及控制功能的计算机,除了微处理器外还包括存储器、接口适配器以及输入输出设备等。
单片机是将微处理器、一定容量的RAM、ROM以及I/O口、定时器等电路集成在一块芯片上,构成的单片微型计算机。
2.单片机具有哪些特点(1)片内存储容量越来越大。
(2 抗干扰性好,可靠性高。
(3)芯片引线齐全,容易扩展。
(4)运行速度高,控制功能强。
(5)单片机内部的数据信息保存时间很长,有的芯片可以达到100年以上。
3. 微型计算机怎样执行一个程序?答:通过CPU指令,提到内存当中,再逐一执行。
4. 微型计算机由那几部分构成?微处理器,存储器,接口适配器(即I/O接口),I/O设备第二章1.89C51单片机内包含哪些主要逻辑功能部件?答:80C51系列单片机在片内集成了以下主要逻辑功能部件:(l)CPU(中央处理器):8位(2)片内RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB(5)并行I/O口:8位,4个(6)串行接口:全双工,1个(7)定时器/计数器:16位,2个(8)片内时钟电路:1个9. 读端口锁存器和“读引脚”有何不同?各使用哪种指令?答:读锁存器(ANL P0,A)就是相当于从存储器中拿数据,而读引脚是从外部拿数据(如MOV A,P1 这条指令就是读引脚的,意思就是把端口p1输入数据送给A)传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常用这些指令于外部通信,判断外部键盘等;字节交换XCH、XCHD算术及逻辑运算ORL、CPL、ANL、ADD、ADDC、SUBB、INC、DEC控制转移CJNE、DJNZ都属于读锁存器。
10. 89C51 P0~P3口结构有何不同?用作通用I/O口输入数据时,应注意什么? 答:P0口内部没有上拉电阻,可以用做16位地址的低8位;P3有第二功能;P2口可以用做16位地址的高8位;需要上拉电阻。
单片机原理及接口技术习题答案第四版李朝青修订后
单片机原理及接口技术课后习题答案(第四版)李朝青第一章1.什么是微处理器(CPU)、微机和单片机?答微处理器本身不是计算机,但它是小型计算机或微机的控制和处理部分。
微机则是具有完整运算及控制功能的计算机,除了微处理器外还包括存储器、接口适配器以及输入输出设备等。
单片机是将微处理器、一定容量的RAM、ROM以及I/O口、定时器等电路集成在一块芯片上,构成的单片微型计算机。
2.单片机具有哪些特点(1)片内存储容量越来越大。
(2 抗干扰性好,可靠性高。
(3)芯片引线齐全,容易扩展。
(4)运行速度高,控制功能强。
(5)单片机内部的数据信息保存时间很长,有的芯片可以达到100年以上。
3. 微型计算机怎样执行一个程序?答:通过CPU指令,提到内存当中,再逐一执行。
4. 微型计算机由那几部分构成?微处理器,存储器,接口适配器(即I/O接口),I/O设备第二章1.89C51单片机内包含哪些主要逻辑功能部件?答:80C51系列单片机在片内集成了以下主要逻辑功能部件:(l)CPU(中央处理器):8位(2)片内RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB(5)并行I/O口:8位,4个(6)串行接口:全双工,1个(7)定时器/计数器:16位,2个(8)片内时钟电路:1个2.89C51的EA端有何用途?答:/EA端接高电平时,CPU只访问片内并执行内部程序,存储器。
/EA端接低电平时,CPU只访问外部ROM,并执行片外程序存储器中的指令。
/EA端保持高电平时,CPU执行内部存储器中的指令。
3. 89C51的存储器分哪几个空间?如何区别不同空间的寻址?答:ROM(片内ROM和片外ROM统一编址)(使用MOVC)(数据传送指令)(16bits地址)(64KB)片外RAM(MOVX)(16bits地址)(64KB)片内RAM(MOV)(8bits地址)(256B)4. 简述89C51片内RAM的空间分配。
单片机原理及接口技术 李朝青
第三章1、指令:CPU根据人的意图来执行某种操作的命令指令系统:一台计算机所能执行的全部指令集合机器语言:用二进制编码表示,计算机能直接识别和执行的语言汇编语言:用助记符、符号和数字来表示指令的程序语言高级语言:独立于机器的,在编程时不需要对机器结构及其指令系统有深入了解的通用性语言5、SFR:直接寻址,位寻址,寄存器寻址;片外RAM:寄存器间接寻址6、MOV A,40H ;直接寻址(40H)→AMOV R0,A ;寄存器寻址(A)→R0MOV P1,#0F0H ;立即数寻址0F0→P1MOV @R0,30H ;直接寻址(30H)→(R0)MOV DPTR,#3848H ;立即数寻址3848H→DPTRMOV 40H,38H ;直接寻址(38H)→40HMOV R0,30H ;直接寻址(30H)→R0MOV P0,R0 ;寄存器寻址(R0)→P0MOV 18H,#30H ;立即数寻址30H→18HMOV A,@R0 ;寄存器间接寻址((R0))→AMOV P2,P1 ;直接寻址(P1)→P2最后结果:(R0)=38H,(A)=40H,(P0)=38H,(P1)=(P2)=0F0H,(DPTR)=3848H,(18H)=30H,(30H)=38H,(38H)=40H,(40H)=40H,(48H)=38H注意:→左边是内容,右边是单元7、用直接寻址,位寻址,寄存器寻址8、MOV A,DATA ;直接寻址2字节1周期MOV A,#DATA ;立即数寻址2字节1周期MOV DATA1,DATA2 ;直接寻址3字节2周期MOV 74H,#78H ;立即数寻址3字节2周期如果想查某一指令的机器码,字节数或周期数可查阅书本后面的附录A9、MOV A,@R0 ;((R0))=80H→AMOV @R0,40H ;(40H)=08H→(R0)MOV 40H,A ;(A)=80→40HMOV R0,#35H ;35H→R0最后结果:(R0)=35H (A)=80H,(32H)=08H,(40H)=80H10、用直接寻址,位寻址,寄存器寻址11、只能采用寄存器间接寻址(用MOVX指令)12、低128字节:直接寻址,位寻址,寄存器间接寻址,寄存器寻址(R0~R7)高128字节:直接寻址,位寻址,寄存器寻址13、采用变址寻址(用MOVC指令)14、压缩BCD码在进行加法运算时应逢十进一,而计算机只将其当作十六进制数处理,此时得到的结果不正确。
单片机原理及接口技术课后答案李朝青第三版
第一题 8051单片机内包含哪些主要逻辑功能部件?1.CPU2.ROM3.RAM4.Timer/Counter5.UART(串口)(通用异步串行接收机发送机)6.4个8bits Port(并口)7.Int0,int1(外部中断)第二题8051的/EA端有什么用处?1.EA端Enable Address(外部程序存储器地址允许输入端)2.低电平有效3.EA=0(低电平有效)时,只允许访问外部存储器4.EA=1时,可以访问内部和外部存储器5.EA还有复用功能,Vpp(Pulse of Programming)(编程脉冲)(固化编程电压输入端)第三题8051的存储器分为那几个空间?怎样区别不同空间的寻址?1.ROM(片内ROM和片外ROM统一编址)(使用MOVC)(数据传送指令)(16bits地址)(64KB)2.片外RAM(MOVX)(16bits地址)(64KB)3.片内RAM(MOV)(8bits地址)(256B)•什么是普林斯顿结构?哈佛结构?1.普林斯顿结构,ROM和RAM统一编址2.哈佛结构,ROM和RAM分开编址第四章8051片内RAM的空间是怎样分配的?1.片内RAM有256B2.低128B是真正的RAM区3.高128B是SFR(特殊功能寄存器)区•真正的RAM区可以分成那几个部分?1.4个工作寄存器区(R0~R7)2.位寻址区3.真正的RAM区第五题简述布尔处理存储器的空间分配,片内RAM中包含哪些可位寻址单元?1.片内RAM区从00H~FFH(256B)2.其中20H~2FH(字节地址)是位寻址区3.对应的位地址是00H~7FH第六题如何简洁地判断8051正在工作?1.用示波器观察8051的XTAL2端是否有脉冲信号输出(判断震荡电路工作是否正常?)2.ALE(地址锁存允许)(Address Latch Enable)输出是fosc的6分频3.用示波器观察ALE是否有脉冲输出(判断 8051芯片的好坏?)4.观察PSEN(判断8051能够到EPROM 或ROM中读取指令码?)5.因为/PSEN接外部EPROM(ROM)的/OE端子6.OE=Output Enable(输出允许)第七题 8051如何确定和改变当前工作寄存器组?1.PSW(程序状态字)(Program Status Word)中的RS1和RS02.可以给出4中组合3.用来从4组工作寄存器组中进行选择4.PSW属于SFR(Special Function Register)(特殊功能寄存器)第十题 8051的/EA信号有什么功能?在使用8031的时候,EA信号引脚应该如何处理?1.EA=Enable Address(外部程序存储器地址允许输入端)2.EA=0(低电平有效)只允许访问外部存储器3.EA=1内外ROM都可以访问4.因为8031没有片内ROM5.只能访问片外的EPROM6.应该使EA=0(有效)第十二题内部RAM第128B单元划分成那几个主要部分?各部分主要功能是什么?1.当前工作寄存器组(4组)(00H~1FH)2.位寻址区(20H~2FH)3.真正的RAM区(30H~7FH)第十三题使单片机复位有哪几种方法?复位后机器的初始状态如何?1.上电复位2.上电复位+手动复位3.脉冲复位4.复位会重置一些寄存器第十四题开机复位后,CPU使用的是哪组工作寄存器?它们的地址什么什么?1.8051有4个工作寄存器组2.分别从R0~R73.分别位于 00H~07H,08H~0FH,10H~17H,18H~1FH4.开机复位后,默认使用寄存器组0第十五题 PSW的作用是什么?作用是什么?1.PSW是一个SFR(特殊功能寄存器)2.位于片内RAM的高128B3.具体地址D0H(00H~FFH)(片内RAM的编址)(8bits编址方法)4.PSW=Program Status Word(程序状态字)•PSW的常用标志位有哪些?1.CY=Carry(进位标志位)2.AC=Auxiliary Carry(辅助进位标志位)(半进位标志位)3.F0用户标志位4.RS1,RS0,用来选择当前工作寄存器组(R0~R7)(4选1)5.OV=Overflow(溢出标志位)6.P=Parity(奇偶校验位)第十五题位地址7CH和字节地址7CH如何区别?位地址7CH在片内RAM中什么地方?1.片内RAM的地址从00H~FFH2.其中20H~2FH(字节地址)是位寻址区(bits)3.位地址从00H~7FH4.位地址7CH位于字节地址2FH5.可以从寻址方式来区分6.位地址使用位寻址方式7.字节地址使用直接寻址,间接寻址第十七题 8051的时钟周期,震荡周期有什么关系?1.震荡周期2.时钟周期=状态周期(state)3.时钟周期=2*振荡周期4.机器周期=6*时钟周期=12*震荡周期5.指令周期=1~4个机器周期第十八题一个机器周期的时序如何划分?1.一个机器周期=12个震荡周期=6个时钟周期(状态周期)2.S1P1,S1P2,S2P1,S2P2,S3P1,S3P2,S4P1,S4P2,S5P1,S5P2,S6P1,S6P23.其中s=state(状态),p=phase(相位)第十九题什么叫做堆栈?SP是什么?它的作用是什么?8051堆栈的容量不能超过多少个字节?1.Stack(堆栈)2.具有FILO,LIFO的特性3.SP=Stack Pointer(堆栈指针)4.SP是栈顶指示器评论这张1.微处理器,RAM,ROM,以及I/O口,定时器,构成的微型计算机称为单片机。
第4章(第5版)李朝青-单片机原理及接口技术(第5版)课件
START: PUSH ACC
;将A中内容进栈保护
MOV R0,#addr1
;将addr1地址值送R0
MOV R1,#addr3
;将addr3地址值送R1
MOV A,@R0
;被加数低字节内容送A
ADD A,@R1
;低字节数相加
MOV @R0,A
用。
12:08
单片机原理及接口技术 15
2、划分模块的原则
每个模块应具有独立的功能,能产生一个明确的结果,即单 模块的功能高内聚性。
模块之间的控制耦合应尽量简单,数据耦合应尽量少,即模 块间的低耦合性。控制耦合是指模块进入和退出的条件及方 式,数据耦合是指模块间的信息交换方式、交换量的多少及 交换频繁程度。
〔标号:〕〔操作码〕〔操作数〕;〔注释〕 每个字段之间要用分隔符分隔,而每个字段内部
不能使用分隔符。可以用作分隔符的符号:空格 “ ”、冒号“:”、、逗号“,”、分号“;” 等。 例:LOOP:MOV A,#00H;立即数00H→A
12:08
单片机原理及接口技术 8
标号
标号是用户定义的符号地址。 一条指令的标号是该条指令的符号名字,标号的值是汇编这
89C51中,由89C51的指令助记符组成。
12:08
单片机原理及接口技术 10
操作数
汇编语言指令可能要求或不要求操作数,所以这一字段可能有也可 能没有。
若有两个操作数,操作数之间用逗号“,”分开。 操作数包括的内容有: (1)工作寄存器:由PSW.3和PSW.4规定的当前工作寄存器区
中的R0~R7。 (2)特殊功能寄存器:21个SFR的名字。 (3)标号名:赋值标号—由汇编指令EQU等赋值的标号;指令标
良好的注释是汇编语言程序编写中的重要组 成部分。
单片机原理及接口技术课后习题答案-李朝青
第一章1.单片机具有哪些特点(1)片内存储容量越来越大。
(2抗干扰性好,可靠性高。
(3)芯片引线齐全,容易扩展。
(4)运行速度高,控制功能强。
(5)单片机内部的数据信息保存时间很长,有的芯片可以达到100年以上。
2. 89C51单片机内包含哪些主要逻辑功能部件?答:80C51系列单片机在片内集成了以下主要逻辑功能部件:(l)CPU(中央处理器):8位(2)片内RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB(5)并行I/O口:8位,4个(6)串行接口:全双工,1个(7)定时器/计数器:16位,2个(8)片内时钟电路:1个3.什么是微处理器(CPU)、微机和单片机?答:微处理器本身不是计算机,但它是小型计算机或微机的控制和处理部分。
微机则是具有完整运算及控制功能的计算机,除了微处理器外还包括存储器、接口适配器以及输入输出设备等。
单片机是将微处理器、一定容量的RAM、ROM以及I/O口、定时器等电路集成在一块芯片上,构成的单片微型计算机。
4. 微型计算机怎样执行一个程序?答:通过CPU指令,提到内存当中,再逐一执行。
5.什么是嵌入式系统?他有哪些类型?为什么说单片机是典型的嵌入式系统?答; 嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
它有嵌入式微处理器、嵌入式微控制器、嵌入式DSP处理器、嵌入式片上系统等。
嵌入式系统的出现最初是基于单片机的。
它从体系结构到指令系统都是按照嵌入式应用特点专门设计的,能最好的满足面对控制对象,应运系统的嵌入、现场的可靠运行以及非凡的控制品质要求。
因此,她是典型的嵌入式系统。
第二章答:80C51系列单片机在片内集成了以下主要逻辑功能部件:(l)CPU(中央处理器):8位(2)片内RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB(5)并行I/O口:8位,4个(6)串行接口:全双工,1个(7)定时器/计数器:16位,2个(8)片内时钟电路:1个2.89C51的EA端有何用途?答:/EA端接高电平时,CPU只访问片内并执行内部程序,存储器。
单片机原理及接口技术习题答案___第四版___李朝青
单片机原理及接口技术课后习题答案李朝青、、、、、、、、、、、、、、、、前两章略、、、、、、、、、、、、、、、、第三章1、指令:CPU根据人的意图来执行某种操作的命令指令系统:一台计算机所能执行的全部指令集合机器语言:用二进制编码表示,计算机能直接识别和执行的语言汇编语言:用助记符、符号和数字来表示指令的程序语言高级语言:独立于机器的,在编程时不需要对机器结构及其指令系统有深入了解的通用性语言2、见第1题3、操作码[目的操作数] [,源操作数]4、寻址方式寻址空间立即数寻址程序存储器ROM直接寻址片内RAM低128B、特殊功能寄存器寄存器寻址工作寄存器R0-R7、A、B、C、DPTR寄存器间接寻址片内RAM低128B、片外RAM变址寻址程序存储器(@A+PC,@A+DPTR)相对寻址程序存储器256B范围(PC+偏移量)位寻址片内RAM的20H-2FH字节地址、部分SFR5、SFR:直接寻址,位寻址,寄存器寻址;片外RAM:寄存器间接寻址6、MOV A,40H ;直接寻址(40H)→AMOV R0,A ;寄存器寻址(A)→R0MOV P1,#0F0H ;立即数寻址0F0→P1MOV @R0,30H ;直接寻址(30H)→(R0)MOV DPTR,#3848H ;立即数寻址3848H→DPTRMOV 40H,38H ;直接寻址(38H)→40HMOV R0,30H ;直接寻址(30H)→R0MOV P0,R0 ;寄存器寻址(R0)→P0MOV 18H,#30H ;立即数寻址30H→18HMOV A,@R0 ;寄存器间接寻址((R0))→AMOV P2,P1 ;直接寻址(P1)→P2最后结果:(R0)=38H,(A)=40H,(P0)=38H,(P1)=(P2)=0F0H,(DPTR)=3848H,(18H)=30H,(30H)=38H,(38H)=40H,(40H)=40H,(48H)=38H注意:→左边是内容,右边是单元7、用直接寻址,位寻址,寄存器寻址8、MOV A,DATA ;直接寻址2字节1周期MOV A,#DATA ;立即数寻址2字节1周期MOV DATA1,DATA2 ;直接寻址3字节2周期MOV 74H,#78H ;立即数寻址3字节2周期如果想查某一指令的机器码,字节数或周期数可查阅书本后面的附录A9、MOV A,@R0 ;((R0))=80H→AMOV @R0,40H ;(40H)=08H→(R0)MOV 40H,A ;(A)=80→40HMOV R0,#35H ;35H→R0最后结果:(R0)=35H (A)=80H,(32H)=08H,(40H)=80H10、用直接寻址,位寻址,寄存器寻址11、只能采用寄存器间接寻址(用MOVX指令)12、低128字节:直接寻址,位寻址,寄存器间接寻址,寄存器寻址(R0~R7)高128字节:直接寻址,位寻址,寄存器寻址13、采用变址寻址(用MOVC指令)14、压缩BCD码在进行加法运算时应逢十进一,而计算机只将其当作十六进制数处理,此时得到的结果不正确。
北京航空航天大学 微机原理 第四章-3
例
mov AL, 0AH mov AL, AH
mov BX, 0abcdH
[标号:] 指令助记符 [操作数[,操作数]] [;注释] 变量
• 用符号表示的存放在存储单元中的可变数值。由DB、 DW、DD等伪指令定义。 • 具有三种属性:段基址、偏移地址、类型
注释
• 用于说明指令或程序的功能 • 增强程序可读性。
例
data1 data2
DB 12, 34, 56 DB 12H, 34H, 56H
;十进制 ;十六进制
MOV AL, ‘G’
string DB ‘1234’
;字符
;字符串
A、B、C、D、E、F开头的十六进制数前面加0,
与H结尾的标识符区别。 如 寄存器名AH、BH、CH、 DH 变量名 abcdH 等
LENGTH 100 DUP(?) 1,2,3 ‘ABCD’ CX, LENGTH M1 BL, LENGTH M2 AL, LENGTH M3 CX, 100 BL, 1 AL, 1
例 M1 M2 M3
DW DW DB MOV MOV MOV ;上述语句等效于: MOV MOV MOV
SIZE (SIZE = TYPE* LENGTH) DW DW DB 100 DUP(?) 1,2,3 ‘ABCD’ CX, SIZE M1 BL, SIZE M2 AL, SIZE M3 CX, 200 BL, 2 AL, 1
表示当前指令、数据或者位置的偏移地址 例4.1 DATA SEGMENT DT1 DB 33 LIST DB 12,38,5,29,74 CONT EQU $-LIST ;COUNT = 当前$所在位置的 DT2 DB 'E' ; 地址-LIST的偏移地址 DATA ENDS
单片机原理与接口技术课后习题答案李朝青
单片机原理及接口朝青1.89C51单片机包含哪些主要逻辑功能部件?答:80C51系列单片机在片集成了以下主要逻辑功能部件:(l)CPU(中央处理器):8位(2)片RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB(5)并行I/O口:8位,4个(6)串行接口:全双工,1个(7)定时器/计数器:16位,2个(8)片时钟电路:1个2.89C51的EA端有何用途?答:/EA端接高电平时,CPU只访问片flash Rom并执行部程序,存储器。
/EA端接低电平时,CPU只访问外部ROM,并执行片外程序存储器中的指令。
/EA端保持高电平时,CPU执行部存储器中的指令。
3. 89C51的存储器分哪几个空间?如何区别不同空间的寻址? 答:ROM(片ROM和片外ROM统一编址)(使用MOVC)(数据传送指令)(16bits地址)(64KB)片外RAM(MOVX)(16bits地址)(64KB)片RAM(MOV)(8bits地址)(256B)4. 简述89C51片RAM的空间分配。
答:片RAM有256B低128B是真正的RAM区高128B是SFR(特殊功能寄存器)区5. 简述布尔处理存储器的空间分配,片RAM中包含哪些可位寻址单元。
答:片RAM区从00H~FFH(256B)其中20H~2FH(字节地址)是位寻址区对应的位地址是00H~7FH6. 如何简捷地判断89C51正在工作?答:用示波器观察8051的XTAL2端是否有脉冲信号输出(判断震荡电路工作是否正常?)ALE(地址锁存允许)(Address Latch Enable)输出是fosc的6分频用示波器观察ALE是否有脉冲输出(判断8051芯片的好坏?)观察PSEN(判断8051能够到EPROM 或ROM中读取指令码?)因为/PSEN接外部EPROM(ROM)的/OE端子OE=Output Enable(输出允许)7. 89C51如何确定和改变当前工作寄存器组?答:PSW(程序状态字)(Program Status Word)中的RS1和RS0可以给出4中组合用来从4组工作寄存器组中进行选择PSW属于SFR(Special Function Register)(特殊功能寄存器)8. 89C51 P0口用作通用I/O口输入时,若通过TTL“OC”门输入数据,应注意什么?为什么?答:9. 读端口锁存器和“读引脚”有何不同?各使用哪种指令?答:读锁存器(ANL P0,A)就是相当于从存储器中拿数据,而读引脚是从外部拿数据(如MOV A,P1 这条指令就是读引脚的,意思就是把端口p1输入数据送给A)传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常用这些指令于外部通信,判断外部键盘等;字节交换XCH、XCHD 算术及逻辑运算ORL、CPL、ANL、ADD、ADDC、SUBB、INC、DEC控制转移CJNE、DJNZ都属于读锁存器。
单片机原理与接口技术李朝青版课后习题答案
第三章1、指令:CPU根据人的意图来执行某种操作的命令指令系统:一台计算机所能执行的全部指令集合机器语言:用二进制编码表示,计算机能直接识别和执行的语言汇编语言:用助记符、符号和数字来表示指令的程序语言高级语言:独立于机器的,在编程时不需要对机器结构及其指令系统有深入了解的通用性语言5、 SFR:直接寻址,位寻址,寄存器寻址;片外RAM:寄存器间接寻址6、 MOV A,40H ;直接寻址(40H)→AMOV R0,A ;寄存器寻址(A)→R0MOV P1,#0F0H ;立即数寻址 0F0→P1MOV @R0,30H ;直接寻址(30H)→(R0)MOV DPTR,#3848H ;立即数寻址 3848H→DPTRMOV 40H,38H ;直接寻址(38H)→40HMOV R0,30H ;直接寻址(30H)→R0MOV P0,R0 ;寄存器寻址(R0)→P0MOV 18H,#30H ;立即数寻址 30H→18HMOV A,@R0 ;寄存器间接寻址((R0))→AMOV P2,P1 ;直接寻址(P1)→P2最后结果:(R0)=38H,(A)=40H,(P0)=38H,(P1)=(P2)=0F0H,(DPTR)=3848H,(18H)=30H,(30H)=38H,(38H)=40H,(40H)=40H,(48H)=38H注意:→左边是内容,右边是单元7、用直接寻址,位寻址,寄存器寻址8、MOV A,DATA ;直接寻址 2字节1周期MOV A,#DATA ;立即数寻址 2字节1周期MOV DATA1,DATA2 ;直接寻址 3字节2周期MOV 74H,#78H ;立即数寻址 3字节2周期如果想查某一指令的机器码,字节数或周期数可查阅书本后面的附录A9、MOV A,@R0 ;((R0))=80H→AMOV @R0,40H ;(40H)=08H→(R0)MOV 40H,A ;(A)=80→40HMOV R0,#35H ;35H→R0最后结果:(R0)=35H (A)=80H,(32H)=08H,(40H)=80H10、用直接寻址,位寻址,寄存器寻址11、只能采用寄存器间接寻址(用MOVX指令)12、低128字节:直接寻址,位寻址,寄存器间接寻址,寄存器寻址(R0~R7)高128字节:直接寻址,位寻址,寄存器寻址13、采用变址寻址(用MOVC指令)14、压缩BCD码在进行加法运算时应逢十进一,而计算机只将其当作十六进制数处理,此时得到的结果不正确。
单片机原理及接口技术课后答案李朝青第三版教学文稿
I. 微处理器,RAM, ROM,以及I/O 口,定时器,构成的微型计算机称为单片机。
2•指令寄存器(IR)保存当前正在执行的一条指令;指令译码器(ID)对操作码进行译码。
3•程序计数器(PC)指示出将要执行的下一条指令地址,由两个8位计数器PCH及PCL 组成。
4.80C31片内没有程序存储器,80C51内部设有4KB的掩膜ROM程序存储器,87C51是将80C51 片内的ROM换成EPROM, 89C51则换成4KB的闪存FLASHROM, 51増强型的程序存储器容量是普通型的2倍。
5.89C51的组成:一个8位的80C51的微处理器,片内256字节数据存储器RAM/SFR用来存放可以读/写的数据,片内4KB程序存储器FLASHROM用存放程序.数据.表格,4个8位并行I/O端口P0-P3,两个16位的定时器/计数器,5个中断源、两个中断个优先级的中断控制系统,一个全双工UART的串行口I/O 口,片内振荡器和时钟产生电路,休闲方式和掉电方式。
6.89C51片内程序存储器容量为4KB,地址从0000-0FFFH开始,存放程序和表格常数,片外最多可扩展64KBROM地址1OOO-FFFFH,片内外统一编址。
单片机的内部存储空间分为数据存储器和程序存储器。
7.内部数据存储器:共256字节单元,包括低128个单元和高128个单元。
低128字节又分成3个区域:工作寄存器区(OOH'lFH),位寻址区(20『2FH)和用户RAM区(30『7FH)存放中间结果,数据暂存及数据缓冲。
高128字节是供给特殊功能寄存器(S FR)使用的,因此称之为特殊功能寄存器区(80H〜FFH), 访问它只能用直接寻址。
内部程序存储器:在8031片内无程序存储器,8051片内具有4KB掩模ROM, 8751片内具有4KBEPR0M。
8.引脚是片内夕卜程序存储器的选择信号。
当端保持高电平时,访问内部程序存储器,但在PC (程序计数器)值超过OFFFH (对于8051/8751/80C51)或仆FFH (对于8052)时,将自动转向访问外部程序存储器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二,分支程序
程序分支是通过条件转移指令实现的,即根据条件对程序的执行 程序分支是通过条件转移指令实现的, 进行判断,满足条件则进行程序转移, 进行判断,满足条件则进行程序转移,不满足条件就顺序执行程 序. 分支程序又分为单分支和多分支结构. 分支程序又分为单分支和多分支结构. 多分支程序是首先把分支程序按序号排列,然后按序号值进行转 多分支程序是首先把分支程序按序号排列, 移. 在89C51指令系统中,通过条件判断实现单分支程序转移的指令 指令系统中, 指令系统中 有:JZ,JNZ,CJNE,DJNZ等.此外还有以位状态作为条件进 , , , 等 行程序分支的指令, 行程序分支的指令,如JC,JNC,JB,JNB,JBC等.使用这些 , , , , 等 指令可以完成0, , 以及相等, 指令可以完成 ,1,正,负,以及相等,不相等作为各种条件判 断依据的程序转移. 断依据的程序转移. 结构如图 所示. 结构如图4-1所示. 所示 例子如例4-1所示. 例子如例 所示. 所示
02:10
单片机原理及接口技术
散转指令 K=0 K=1 ┅ ┅ K=n-1 K=n
转向0分支
转向1分支
┅
转向n-1分支
转向n分支
图4-1 分支程序结构
02:10
单片机原理及接口技术
种分支转移程序. 例4-1: 128种分支转移程序. : 种分支转移程序 功能:根据入口条件转移到128个目的地址. 个目的地址. 功能:根据入口条件转移到 个目的地址 入口:( :(R3) 转移目的地址的序号 转移目的地址的序号00H~7FH. 入口:( )=转移目的地址的序号 ~ . 出口:转移到相应子程序入口. 出口:转移到相应子程序入口.
02:10
单片机原理及接口技术
1,置循环初值
对于循环程序中所使用的工作单元,在 对于循环程序中所使用的工作单元, 循环开始时应置初值. 循环开始时应置初值. 例如,工作寄存器设置计数初值,累加 例如,工作寄存器设置计数初值, 器A清0,以及设置地址指针,长度等. 清 ,以及设置地址指针,长度等.
02:10
单片机原理及接口技术
二,确定算法
算法是如何将实际问题转化成程序模块 来处理. 来处理. 在编程以前,先要对几种不同的算法进 在编程以前, 行分析,比较, 行分析,比较,找出最适宜的算法
02:10
单片机原理及接口技术
三,画程序流程图
程序流程图是使用各种图形,符号,有向线段等来说明程序设计 程序流程图是使用各种图形,符号, 过程的一种直观的表示. 过程的一种直观的表示. 流程图步骤分得越细致,编写程序是也越方便. 流程图步骤分得越细致,编写程序是也越方便. 画流程图是程序结构设计是采用的一种重要手段. 画流程图是程序结构设计是采用的一种重要手段. 一个系统软件有总的流程图(主程序框图)和局部的流程图. 一个系统软件有总的流程图(主程序框图)和局部的流程图. 流程图常采用的图形和符号. 流程图常采用的图形和符号.
单片机原理及接口技术
三,循环程序
在程序运行时,有时需要连续重复执行某段程序,可 在程序运行时,有时需要连续重复执行某段程序, 以使用循环程序.其结构包括四部分: 以使用循环程序.其结构包括四部分: 1,置循环初值 , 2,循环体(循环工作部分) ,循环体(循环工作部分) 3,修改控制变量 , 4,循环控制部分 , 其组织方式如图 所示. 其组织方式如图4-2所示. 所示
JMP_128:MOV RL MOV JMP JMPTAB:AJMP AJMP ┇ AJMP
A,R3 A DPTR,#JMPTAB @A+DPTR ROUT00 ROUT01 ┇ ROUT7F
128个子程序首址
说明:此程序要求128个转移目的地址(ROUT00 ~ROUT7FH)必须驻 说明:此程序要求 个转移目的地址( 说明 个转移目的地址 ) 留在与绝对转移指令AJMP相同的一个 相同的一个2KB存储区内. 存储区内. 留在与绝对转移指令 相同的一个 存储区内 RL指令对变址部分乘以 ,因为每条 指令对变址部分乘以2,因为每条AJMP指令占两个字节. 指令占两个字节. 指令对变址部分乘以 指令占两个字节 02:10
02:10
单片机原理及接口技术
一,模块化的程序设计方法
1,程序功能模块化的优点 , 2,划分模块的原则 ,
02:10
单片机原理及接口技术
1,程序功能模块化的优点
单个模块结构的程序功能单一,易于编写,调试和修 单个模块结构的程序功能单一,易于编写, 改. 便于分工,从而可使多个程序员同时进行程序的编写 便于分工, 和调试工作,加快软件研制进度. 和调试工作,加快软件研制进度. 程序可读性好,便于功能扩充和版本升级. 程序可读性好,便于功能扩充和版本升级. 对程序的修改可局部进行,其它部分可以保持不变. 对程序的修改可局部进行,其它部分可以保持不变. 对于使用频繁的子程序可以建立子程序库,便于多个 对于使用频繁的子程序可以建立子程序库, 模块调用. 模块调用.
02:10
单片机原理及接口技术
2,划分模块的原则
每个模块应具有独立的功能,能产生一个明确的结果, 每个模块应具有独立的功能,能产生一个明确的结果, 即单模块的功能高内聚性. 即单模块的功能高内聚性. 模块之间的控制耦合应尽量简单,数据耦合应尽量少, 模块之间的控制耦合应尽量简单,数据耦合应尽量少, 即模块间的低耦合性. 即模块间的低耦合性.控制耦合是指模块进入和退出 的条件及方式,数据耦合是指模块间的信息交换方式, 的条件及方式,数据耦合是指模块间的信息交换方式, 交换量的多少及交换频繁程度. 交换量的多少及交换频繁程度. 模块长度适中.20条~100条的范围较合适. 模块长度适中. 条 条的范围较合适. 条的范围较合适
四,编写程序
用89C51汇编语言编写的源程序行(一条 汇编语言编写的源程序行( 汇编语言编写的源程序行 语句)包括四个部分,也叫四个字段: 语句)包括四个部分,也叫四个字段:
〔标号:〕〔操作码〕〔操作数〕;〔注释〕 注释〕 标号:〕〔操作码〕〔操作数〕 操作码〕〔操作数 每个字段之间要用分隔符分隔,而每个字段内 每个字段之间要用分隔符分隔, 部不能使用分隔符.可以用作分隔符的符号: 部不能使用分隔符.可以用作分隔符的符号: 空格" 冒号" ,,逗号 逗号" 空格" ",冒号":",,逗号",",分 号";"等. 例:LOOP:MOV A,#00H;立即数 : , ;立即数00H→A
02:10
单片机原理及接口技术
标号
标号是用户定义的符号地址. 标号是用户定义的符号地址. 一条指令的标号是该条指令的符号名字,标号的值是 一条指令的标号是该条指令的符号名字, 汇编这条指令时指令的地址. 汇编这条指令时指令的地址. 标号由以英文字母开始的1~8个字母或数字组成,以 个字母或数字组成, 标号由以英文字母开始的 ~ 个字母或数字组成 冒号" 冒号":"结尾. 结尾. 标号可以由赋值伪指令赋值,如果没有赋值,汇编程 标号可以由赋值伪指令赋值,如果没有赋值, 序把存放该指令目标码第一字节的存储单元的地址赋 给该标号,所以,标号又叫指令标号. 给该标号,所以,标号又叫指令标号.
单片机原理及接口技术
注释
注释部分不是汇编语言的功能部分,只 注释部分不是汇编语言的功能部分, 是用语增加程序的可读性. 是用语增加程序的可读性. 良好的注释是汇编语言程序编写中的重 要组成部分. 要组成部分.
02:10
单片机原理及接口技术
§4.1.2
编程的方法和技巧
一,模块化的程序设计方法 二,编程技巧
02:10
单片机原理及接口技术
椭圆框
或桶形框
:表示程序的开始或结束.
矩形框 菱形框
:表示要进行的工作. 表示要进行的工作. :表示要判断的事情,菱形框内 表示要判断的事情, 的表达式表示要判断的内容. 的表达式表示要判断的内容.
圆圈 指向线
02:10
:表示连接点 :表示程序的流向
单片机原理及接口技术
§4.1.1
编程的步骤
一,分析问题 二,确定算法 三,画程序流程图 四,编写程序
02:10
单片机原理及接口技术
一,分析问题
对需要解决的问题进行分析,以求对问 对需要解决的问题进行分析, 题由正确的理解. 题由正确的理解. 解决问题的任务是什么? 解决问题的任务是什么? 工作过程? 工作过程? 现有的条件,已知数据,对运算的精度 现有的条件,已知数据, 和速度方面的要求? 和速度方面的要求? 设计的硬件结构是否方便编程? 设计的硬件结构是否方便编程?
02:10
单片机原理及接口技术
二,编程技巧
1,尽量采用循环结构和子程序. ,尽量采用循环结构和子程序. 2,尽量少用无条件转移指令. ,尽量少用无条件转移指令. 3,对于通用的子程序,考虑到其通用性,除了用于存放子程 ,对于通用的子程序,考虑到其通用性, 序入口参数的寄存器外, 序入口参数的寄存器外,子程序中用到的其他寄存器的内容 应压入堆栈(返回前再弹出),即保护现场. ),即保护现场 应压入堆栈(返回前再弹出),即保护现场. 4,在中断处理程序中,除了要保护处理程序中用到的寄存器 ,在中断处理程序中, 还要保护标志寄存器. 外,还要保护标志寄存器. 5,用累加器传递入口参数或返回参数比较方便,在子程序中, ,用累加器传递入口参数或返回参数比较方便,在子程序中, 一般不必把累加器内容压入堆栈. 一般不必把累加器内容压入堆栈.
02:10
单片机原理及接口技术
操作码
操作码是必不可少的. 操作码是必不可少的. 它用一组字母符号表示指令的操作码. 它用一组字母符号表示指令的操作码. 的指令助记符组成. 在89C51中,由89C51的指令助记符组成. 中 的指令助记符组成