单片机原理及接口技术第3章习题答案.docx
- 格式:docx
- 大小:93.36 KB
- 文档页数:8
单⽚机原理及接⼝技术课后习题答案第⼆章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只访问⽚内/doc/c312e1f309a1284ac850ad02de80d4d8d15a01a8.html 并执⾏内部程序,存储器。
/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~7FH7. 89C51如何确定和改变当前⼯作寄存器组?答:PSW(程序状态字)(Program Status Word)中的RS1和RS0可以给出4种组合,⽤来从4组⼯作寄存器组中进⾏选择,PSW属于SFR(Special Function Register)(特殊功能寄存器)9. 读端⼝锁存器和“读引脚”有何不同?各使⽤哪种指令?答:读锁存器(ANL P0,A)就是相当于从存储器中拿数据,⽽读引脚是从外部拿数据(如MOV A,P1 这条指令就是读引脚的,意思就是把端⼝p1输⼊数据送给A)传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常⽤这些指令于外部通信,判断外部键盘等;字节交换XCH、XCHD算术及逻辑运算 ORL、CPL、ANL、ADD、ADDC、SUBB、INC、DEC控制转移CJNE、DJNZ都属于读锁存器。
3.4 思考题与习题5.要访问特殊功能寄存器和片外数据存储器,应采用哪些寻址方式?答:访问特殊功能寄存器可采用寄存器寻址、直接寻址、寄存器间接寻址、部分的还可采用位寻址。
访问片外数据存储器只能采用寄存器间接寻址。
6.在89C51片内RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H, (48H)=90H。
请分析下面各是什么指令,说明源操作数的寻址方式以及按顺序执行每条指令后的结果。
MOV A,40H ;A=48H,直接寻址MOV R0,A ;R0=48H,寄存器寻址MOV P1,#0F0H ;P1=F0H,立即寻址MOV @R0,30H ;(48H)=38H,直接寻址MOV DPTR,#3848H ;DPTR=3848H,立即寻址MOV 40H,38H ;(40H)=40H,直接寻址MOV R0,30H ;R0=38H,直接寻址MOV P0,R0 ;P0=38H,寄存器寻址MOV 18H,#30H ;(18H)=30H,立即寻址MOV A,@R0 ;A=40H,寄存器间接寻址MOV P2,P1 ;P2=F0H,寄存器寻址9.设R0的内容为32H,A的内容为48H,片内RAM的32H单元内容为80H,40H单元内容为08H。
请指出在执行下列程序段后上述各单元内容的变化。
MOV A,@R0 ;A=80HMOV @R0,40H ;(32H)=08HMOV 40H,A ;(40H)=80HMOV R0,#35H ;R0=35H答:R0=35H,A=80H,(32H)=08H,(40H)=80H。
16.已知(A)=83H,,(R0)=17H,,(17H)=34H。
请写出执行完下列程序段后A的内容。
ANL A,#17H ;A=03HORL 17H,A ;(17H)=34H∨03H=37HXRL A,@R0 ;A=03H⊕37H=34HCPL A ;A=CBH答:A=CBH17.使用位操作指令实现下列逻辑操作。
第3章 MCS-51系列单片机的指令系统3-1解答:指令是规定计算机进行某种操作的命令,一台计算机所能执行的指令集合称为该计算机的指令系统。
计算机内部只识别二进制数,因此,能别计算机直接识别、执行的指令时使用二进制编码表示的指令,这种指令别称为机器语言指令。
以助记符表示的指令就是计算机的汇编语言指令。
3-2解答:[标号:] <操作码> [操作数] [;注释]3-3解答:MCS-51系列单片机提供了7种寻址方式:(1)立即寻址:操作数在指令中直接给出,立即数前面有“#”。
(2)直接寻址:在指令中直接给出操作数地址。
对应片内低128个字节单元和特殊功能寄存器。
(3)寄存器寻址:以寄存器的内容作为操作数。
对应的寄存器有:R0~R7、A、AB寄存器和数据指针DPTR。
(4)寄存器间接寻址:以寄存器的内容作为RAM地址,该地址中的内容才是操作数。
对应片内RAM的低128个单元采用R0、R1作为间址寄存器,片外RAM低256个单元可用R0、R1作为间址寄存器,整个64KB空间可用DPTR作为间址寄存器。
(5)变址寻址:以DPTR或PC作为基址寄存器,以累加器A作为变址寄存器,并以两者内容相加形成的16位地址作为操作数地址。
对应片内、片外的ROM空间。
(6)相对寻址:只在相对转移指令中使用。
对应片内、片外的ROM空间。
(7)位寻址:对可寻址的位单独进行操作。
对应位寻址区20H~2FH单元的128位和字节地址能被8整除的特殊功能寄存器的相应位。
3-4解答:直接寻址方式。
3-5解答:寄存器间接寻址方式。
3-6解答:立即寻址方式,直接寻址方式,寄存器寻址方式,寄存器间接寻址方式,位寻址方式。
3-7解答:变址寻址方式3-8解答:对于8052单片机内部RAM的高128B,必须采用寄存器间接寻址方式进行访问。
3-9解答:外部数据传送指令有6条:MOVX A,@DPTR MOVX @DPTR,AMOVX A,@Ri MOVX @Ri,AMOVC A,@A+DPTR MOVC A,@A+PC(1)MOVX A,@R1 MOVX A,@DPTR都是访问片外RAM,但二者寻址范围不同。
《单片机原理及接口技术》(第2版)人民邮电出版社第3章 8051指令系统与编程基础思考题及习题31.说明伪指令的作用。
“伪”的含义是什么?常用伪指令有哪些?其功能如何?答:伪指令是程序员发给汇编程序的命令,只有在汇编前的源程序中才有伪指令,即在汇编过程中的用来控制汇编过程的命令。
所谓“伪”是体现在汇编后,伪指令没有相应的机器代码产生。
常用伪指令及功能如下:ORG(ORiGin)汇编起始地址命令;END(END of assembly)汇编终止命令;EQU(EQUate)标号赋值命令;DB(Define Byte)定义数据字节命令;DW(Define Word)定义数据字命令;DS(Define Storage)定义存储区命令;BIT 位定义命令2.解释下列术语:手工汇编,机器汇编,反汇编答:手工汇编:通过查指令的机器代码表(表3-2),逐个把助记符指令“翻译”成机器代码,再进行调试和运行。
这种人工查表“翻译”指令的方法称为“手工汇编”。
机器汇编:借助于微型计算机上的软件(汇编程序)来代替手工汇编。
通过在微机上运行汇编程序,把汇编语言源程序翻译成机器代码。
反汇编:将二进制的机器码程序翻译成汇编语言源程序的过程称为“反汇编”。
3.下列程序段经汇编后,从1000H开始的各有关存储单元的内容是什么?ORG 1000HTAB1 EQU 1234HTAB2 EQU 3000HDB "MAIN"DW TAB1,TAB2,70H答:从1000H开始的各有关存储单元的内容(16进制)如下:4DH,41H,49H,4EH,12H,34H,30H,00H,00H,70H4.设计子程序时应注意哪些问题?答:编写子程序时应注意以下问题:子程序的第一条指令前必须有标号。
主程序调用子程序,有如下两条子程序调用指令:①绝对调用指令ACALL addr11。
被调用的子程序的首地址与绝对调用指令的下一条指令的高5位地址相同,即只能在同一个2KB区内。
单片微型计算机原理与接口技术课后答案第一、二章略第三章【3—1】什么是指令及指令系统?【答】控制单片机进行某种操作的命令称为“指令”。
单片机就是根据指令来指挥和控制单片机各部分协调工作。
指令由二进制代码表示,指令通常包括操作码和操作数两部分:操作码规定操作的类型,操作数给出参加操作的数或存放数的地址。
所有指令的集合称为“指令系统”。
80C51单片机的指令系统专用于80C51系列单片机,是一个具有255种操作码(OOH~FFH,除A5H外)的集合。
【3—2】80C51单片机的指令系统具有哪些特点?【答】80C51单片机的指令系统容易理解和阅读。
只要熟记代表33种功能的42种助记即可。
有的功能如数据传送,可以有几种助记符,如MOV、MOVc、MOVX。
而指令功能助记符与操作数各种寻址方式的结合,共构造出111种指令,而同一种指令所对应的操作码可以多至8种(如指令中Rn对应寄存器R0~R7)。
80C51单片机的指令系统具有较强的控制操作类指令,容易实现“面向控制”的功能;具有位操作类指令,有较强的布尔变量处理能力。
【3—3】简述80C51指令的分类和格式。
【答】80C51的指令系统共有111条指令,按其功能可分为5大类:数据传送类指令(28条)、算术运算类指令(24条)、逻辑运算类指令(25条)、控制转移类指令(17条)和布尔操作(位)类指令(17条)。
指令的表示方法称之为“指令格式”,其内容包括指令的长度和指令内部信息的安排等。
在80C51系列的指令系统中,有单字节、双字节和三字节等不同长度的指令。
·单字节指令:指令只有一个字节,操作码和操作数同在一个字节中。
·双字节指令:包括两个字节。
其中一个字节为操作码,另一个字节是操作数。
·三字节指令:操作码占一个字节,操作数占两个字节。
其中操作数既可能是数据,也可能是地址。
【3—4】简述80C51的指令寻址方式,并举例说明。
【答】执行任何一条指令都需要使用操作数,寻址方式就是在指令中给出的寻找操作数或操作数所在地址的方法。
第三章单片机的汇编语言与程序设计习题1.设内部RAM中59H单元的内容为50H,写出当执行以下程序段后寄存器A,R0和内部RAM中50H,51H单元的内容为何值?MOV A,59HMOV R0,AMOV A,#00HMOV @R0,AMOV A,#25HMOV 51H,AMOV 52H,#70H解:MOV A,59H ;A=50HMOV R0,A ;RO=50HMOV A,#00H ;A=00HMOV @R0,A ;50H=00HMOV A,#25H ;A=25HMOV 51H,A ;51H=25HMOV 52H,#70H ;52H=70H所以:A=25H R0=50H ;50H=00H 51H=25H2.请选用合适的指令对P0口内容做修改〔〕。
解:MOV A,P0ANL A,0fhMov P0,A3.试问外部数据存储器和程序存储器可以用哪些指令来实现?举例说明。
解:访问外部数据存储器指令有:MOVX @DPTR,A MOVX DPTR,#0100H MOV @DPTR,AMOVX A,@DPTR MOVX DPTR,#0200H MOV A,@DPTRMOVX A,@Ri MOVX A,@R0MOVX @Ri,A MOVX @RI,A访问程序存储器指令有:MOVX A,@A+PCMOVX A,@A+DPTR4.设堆栈指针SP中的内容为60H,内部RAM中30H和31H单元的内容分别为24H和10H,执行以下程序段后,61H,62H,30H,31H,DPTR及SP中的内容将有何变化?PUSH 30HPUSH 31HPOP DPLPOP DPHMOV 30H,#00HMOV 31H,#0FFH解:PUSH 30H ;61H=24HPUSH 31H ;62=10H SP=62HPOP DPL ;DPL=10HPOP DPH ;DPH=24H SP=60HMOV 30H,#00H ;30H=00HMOV 31H,#0FFH ;31H=0FFH5.设(A)=40H,(R1)=23H,(40H)=05H。
单片机微型计算机原理及接口技术课后习题答案3章3-1简述模型机的工作过程(就以书上举例,叙述过程,本题内容较多,明白道理即可,不需详细记住)计算机的指令执行过程分为读取指令→分析指令→执行指令→保存结果在进行计算前,应做如下工作:①用助记符号指令(汇编语言)编写程序(源程序)②用汇编软件(汇编程序)将源程序汇编成计算机能识别的机器语言程序③将数据和程序通过输入设备送入存储器中存放读取指令阶段(就以书上举例,理解过程即可):①CPU将程序计数器PC中的内容XXH送地址寄存器AR②程序计数器PC的内容自动加1,为取下一条指令做好准备③地址寄存器AR将XXH通过地址总线AB送至存储器地址译码器译码,选中XXH 单元。
④CPU发出“读”指令⑤所选中的XXH单元中的内容由存储器送至数据总线DB上⑥经数据总线DB,CPU将读出的XXH单元中的内容送至数据寄存器DR⑦数据寄存器DR将其送至指令寄存器IR,经过译码,CPU通过控制器发出执行该条指令的控制命令。
执行指令阶段(就以书上举例,理解过程即可)与读取类似(这里从略)3-2 STC15F2K60S2单片机的存储器分为哪几个空间?中断服务程序的入口地址分别是什么?32个通用寄存器各对应哪些RAM单元?STC15F2K60S2单片机的存储器分为四个空间,分别为程序Flash存储器,数据Flash 存储器,内部数据存储器和扩展数据存储器。
中断服务程序的入口地址分别为:0003H 外部中断0中断服务程序的入口地址000BH 定时/计数器0中断服务程序的入口地址0013H 外部中断1中断服务程序的入口地址001BH 定时/计数器1中断服务程序的入口地址0023H 串行通信口1中断服务程序的入口地址002BH ADC中断服务程序的入口地址0033H 低电压检测中断服务程序的入口地址003BH PCA中断服务程序的入口地址0043H 串行通信口2中断服务程序的入口地址004BH SPI中断服务程序的入口地址0053H 外部中断2中断服务程序的入口地址005BH 外部中断3中断服务程序的入口地址0063H 定时/计数器2中断服务程序的入口地址0083H 外部中断4中断服务程序的入口地址32个通用寄存器分为寄存器组0,1,2,3,每个组8个8位的工作寄存器(R0~R7),均存在于内部数据存储器的低128字节内,范围为00H-1FH寄存器组0 R0~R7对应00H-07H寄存器组1 R0~R7对应08H-0FH寄存器组2 R0~R7对应10H-17H寄存器组3 R0~R7对应18H-1FH3-3 位地址29H,61H,7FH,E0H,F1H,各对应哪些单元的哪些位?29H——RAM位寻址区字节地址25H,对应D1位61H——RAM位寻址区字节地址2CH,对应D1位7FH——RAM位寻址区字节地址2FH,对应D7位E0H——高128字节/特殊功能寄存器SFR区,寄存器ACC(字节地址E0H)的D0位;F1H——高128字节/SFR,寄存器B(字节地址F0H)的D1位。