单片机原理及接口技术课后答案第三版(李朝青编著)_第1页
单片机原理及接口技术课后答案第三版(李朝青编著)_第2页
单片机原理及接口技术课后答案第三版(李朝青编著)_第3页
单片机原理及接口技术课后答案第三版(李朝青编著)_第4页
单片机原理及接口技术课后答案第三版(李朝青编著)_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

伊伦工作室 单片机原理及接口技术课后答案单片机原理及接口技术课后答案 第三版 第三版 第一章第一章 1 单片机具有哪些特点单片机具有哪些特点 1 1 片内存储容量越来越大 片内存储容量越来越大 2 2 抗干扰性好 可靠性高 抗干扰性好 可靠性高 3 3 芯片引线齐全 容易扩展 芯片引线齐全 容易扩展 4 4 运行速度高 控制功能强 运行速度高 控制功能强 5 5 单片机内部的数据信息保存时间很长 有的芯片可以达到 单片机内部的数据信息保存时间很长 有的芯片可以达到 100100 年以上 年以上 2 2 89C5189C51 单片机内包含哪些主要逻辑功能部件 单片机内包含哪些主要逻辑功能部件 答 答 80C5180C51 系列单片机在片内集成了以下主要逻辑功能部件 系列单片机在片内集成了以下主要逻辑功能部件 l CPU l CPU 中央处理器中央处理器 8 8 位位 2 2 片内片内 RAM 128BRAM 128B 3 3 特殊功能寄存器特殊功能寄存器 21 21 个个 4 4 程序存储器程序存储器 4KB 4KB 5 5 并行并行 I OI O 口口 8 8 位 位 4 4 个个 6 6 串行接口串行接口 全双工 全双工 1 1 个个 7 7 定时器定时器 计数器计数器 16 16 位 位 2 2 个个 8 8 片内时钟电路片内时钟电路 1 1 个个 3 3 什么是微处理器什么是微处理器 CPU CPU 微机和单片机 微机和单片机 答 微处理器本身不是计算机 但它是小型计算机或微机的控制和处理部分 答 微处理器本身不是计算机 但它是小型计算机或微机的控制和处理部分 微机则是具有完整运算及控制功能的计算机 除了微处理器外还包括存储器 接微机则是具有完整运算及控制功能的计算机 除了微处理器外还包括存储器 接 口适配器以及输入输出设备等 口适配器以及输入输出设备等 单片机是将微处理器 一定容量的单片机是将微处理器 一定容量的 RAMRAM ROMROM 以及以及 I OI O 口 定时器等电路集成在口 定时器等电路集成在 一块芯片上 构成的单片微型计算机 一块芯片上 构成的单片微型计算机 4 4 微型计算机怎样执行一个程序 微型计算机怎样执行一个程序 答 通过答 通过 CPUCPU 指令 提到内存当中 再逐一执行 指令 提到内存当中 再逐一执行 5 5 什么是嵌入式系统 他有哪些类型 为什么说单片机是典型的嵌入式系统 什么是嵌入式系统 他有哪些类型 为什么说单片机是典型的嵌入式系统 答答 嵌入式系统是将先进的计算机技术 半导体技术和电子技术和各个行业的具嵌入式系统是将先进的计算机技术 半导体技术和电子技术和各个行业的具 体应用相结合后的产物 这一点就决定了它必然是一个技术密集 资金密集 高体应用相结合后的产物 这一点就决定了它必然是一个技术密集 资金密集 高 度分散 不断创新的知识集成系统 度分散 不断创新的知识集成系统 它有嵌入式微处理器 嵌入式微控制器 嵌入式它有嵌入式微处理器 嵌入式微控制器 嵌入式 DSPDSP 处理器 嵌入式片上系处理器 嵌入式片上系 统等 统等 伊伦工作室 嵌入式系统的出现最初是基于单片机的 它从体系结构到指令系统都是按照嵌入式系统的出现最初是基于单片机的 它从体系结构到指令系统都是按照 嵌入式应用特点专门设计的 能最好的满足面对控制对象 应运系统的嵌入 现嵌入式应用特点专门设计的 能最好的满足面对控制对象 应运系统的嵌入 现 场的可靠运行以及非凡的控制品质要求 因此 她是典型的嵌入式系统 场的可靠运行以及非凡的控制品质要求 因此 她是典型的嵌入式系统 第二章第二章 1 89C511 89C51 单片机内包含哪些主要逻辑功能部件 单片机内包含哪些主要逻辑功能部件 答 答 80C5180C51 系列单片机在片内集成了以下主要逻辑功能部件 系列单片机在片内集成了以下主要逻辑功能部件 l CPU l CPU 中央处理器中央处理器 8 8 位位 2 2 片内片内 RAM 128BRAM 128B 3 3 特殊功能寄存器特殊功能寄存器 21 21 个个 4 4 程序存储器程序存储器 4KB 4KB 5 5 并行并行 I OI O 口口 8 8 位 位 4 4 个个 6 6 串行接口串行接口 全双工 全双工 1 1 个个 7 7 定时器定时器 计数器计数器 16 16 位 位 2 2 个个 8 8 片内时钟电路片内时钟电路 1 1 个个 2 89C512 89C51 的的 EAEA 端有何用途 端有何用途 答 答 EA EA 端接高电平时 端接高电平时 CPUCPU 只访问片内只访问片内 并执行内部程序 存储器 并执行内部程序 存储器 EA EA 端接低电平时 端接低电平时 CPUCPU 只访问外部只访问外部 ROMROM 并执行片外程序存储器中的指令 并执行片外程序存储器中的指令 EA EA 端保持高电平时 端保持高电平时 CPUCPU 执行内部存储器中的指令 执行内部存储器中的指令 3 3 89C5189C51 的存储器分哪几个空间的存储器分哪几个空间 如何区别不同空间的寻址如何区别不同空间的寻址 答 答 ROMROM 片内 片内 ROMROM 和片外和片外 ROMROM 统一编址 使用统一编址 使用 MOVCMOVC 数据传送指令 数据传送指令 16bits16bits 地址 地址 64KB64KB 片外片外 RAMRAM MOVXMOVX 16bits16bits 地址 地址 64KB64KB 片内片内 RAMRAM MOVMOV 8bits8bits 地址 地址 256B256B 4 4 简述简述 89C5189C51 片内片内 RAMRAM 的空间分配 的空间分配 答 片内答 片内 RAMRAM 有有 256B256B 低低 128B128B 是真正的是真正的 RAMRAM 区区 高高 128B128B 是是 SFRSFR 特殊功能寄存器 区 特殊功能寄存器 区 5 5 简述布尔处理存储器的空间分配 片内简述布尔处理存储器的空间分配 片内 RAMRAM 中包含哪些可位寻址单元 中包含哪些可位寻址单元 答 片内答 片内 RAMRAM 区从区从 00H FFH00H FFH 256B256B 其中其中 20H 2FH20H 2FH 字节地址 是位寻址区 字节地址 是位寻址区 对应的位地址是对应的位地址是 00H 7FH00H 7FH 6 6 如何简捷地判断如何简捷地判断 89C5189C51 正在工作正在工作 伊伦工作室 答 用示波器观察答 用示波器观察 80518051 的的 XTAL2XTAL2 端是否有脉冲信号输出 判断震荡电路工作是端是否有脉冲信号输出 判断震荡电路工作是 否正常 否正常 ALEALE 地址锁存允许 地址锁存允许 AddressAddress LatchLatch EnableEnable 输出是 输出是 foscfosc 的的 6 6 分频分频 用示波器观察用示波器观察 ALEALE 是否有脉冲输出 判断是否有脉冲输出 判断 80518051 芯片的好坏 芯片的好坏 观察观察 PSENPSEN 判断 判断 80518051 能够到能够到 EPROMEPROM 或或 ROMROM 中读取指令码 中读取指令码 因为因为 PSEN PSEN 接外部接外部 EPROMEPROM ROMROM 的 的 OE OE 端子端子 OE OutputOE Output EnableEnable 输出允许 输出允许 7 7 89C5189C51 如何确定和改变当前工作寄存器组如何确定和改变当前工作寄存器组 答 答 PSWPSW 程序状态字 程序状态字 ProgramProgram StatusStatus WordWord 中的 中的 RS1RS1 和和 RS0RS0 可以给出可以给出 4 4 中组合中组合 用来从用来从 4 4 组工作寄存器组中进行选择组工作寄存器组中进行选择 PSWPSW 属于属于 SFRSFR SpecialSpecial FunctionFunction RegisterRegister 特殊功能寄存器 特殊功能寄存器 8 8 89C5189C51 P0P0 口用作通用 口用作通用 口输入时 若通过 口输入时 若通过 TTL OC TTL OC 门输入数据 应注意门输入数据 应注意 什么什么 为什么为什么 答 答 9 9 读端口锁存器和读端口锁存器和 读引脚读引脚 有何不同 各使用哪种指令 有何不同 各使用哪种指令 答 读锁存器 答 读锁存器 ANLANL P0 AP0 A 就是相当于从存储器中拿数据 而读引脚是从外部拿 就是相当于从存储器中拿数据 而读引脚是从外部拿 数据 如数据 如 MOVMOV A P1A P1 这条指令就是读引脚的 意思就是把端口这条指令就是读引脚的 意思就是把端口 p1p1 输入数据送给输入数据送给 A A 传送类传送类 MOVMOV 判位转移 判位转移 JBJB JNBJNB 这些都属于读引脚 平时实验时经常用这 这些都属于读引脚 平时实验时经常用这 些指令于外部通信 判断外部键盘等 字节交换些指令于外部通信 判断外部键盘等 字节交换 XCHXCH XCHDXCHD 算术及逻辑运算算术及逻辑运算 ORLORL CPLCPL ANLANL ADDADD ADDCADDC SUBBSUBB INCINC DECDEC 控制转移控制转移 CJNECJNE DJNZDJNZ 都属于读锁都属于读锁 存器 存器 10 10 89C5189C51 P0P0 P3P3 口结构有何不同口结构有何不同 用作通用 用作通用 口输入数据时 应注意什么 口输入数据时 应注意什么 答 答 P0P0 口内部没有上拉电阻 可以用做口内部没有上拉电阻 可以用做 1616 位地址的低位地址的低 8 8 位 位 P3P3 有第二功能 有第二功能 P2P2 口可以用做口可以用做 1616 位地址的高位地址的高 8 8 位 位 需要上拉电阻 需要上拉电阻 OCOC 门电路无法输出高低电平 只有靠上拉电阻才能实现门电路无法输出高低电平 只有靠上拉电阻才能实现 11 11 89C5189C51 单片机的 信号有何功能单片机的 信号有何功能 在使用在使用 80318031 时 信号引脚应如何处时 信号引脚应如何处 理理 答 答 1 80C51 1 80C51 单片机的单片机的 EAEA 信号的功能信号的功能 EAEA 为片外程序存储器访问允许信号 低电平有效为片外程序存储器访问允许信号 低电平有效 在编程时 其上施加在编程时 其上施加 21V21V 的编程电压的编程电压 EAEA 引脚接高电平时 程序从片内程序存储器开始执行 即访问片内存储器引脚接高电平时 程序从片内程序存储器开始执行 即访问片内存储器 EAEA 引脚接低电平时 迫使系统全部执行片外程序存储器程序 引脚接低电平时 迫使系统全部执行片外程序存储器程序 伊伦工作室 2 2 在使用在使用 80C3180C31 时时 EA EA 信号引脚的处理方法信号引脚的处理方法 因为因为 80C3180C31 没有片内的程序存储器 所以在使用它时必定要有外部的程序存没有片内的程序存储器 所以在使用它时必定要有外部的程序存 储器 储器 EAEA 信号引脚应接低电平 信号引脚应接低电平 12 12 89C5189C51 单片机有哪些信号需要芯片引脚以第单片机有哪些信号需要芯片引脚以第 2 2 功能的方式提供功能的方式提供 答 答 第一功能第一功能 第二功能第二功能 串行口 串行口 P3 0P3 0 RXDRXD 串行输入口 串行输入口 P3 1P3 1 TXDTXD 串行输出口 串行输出口 中断 中断 P3 2P3 2 INT0INT0 外部中断外部中断 0 0 P3 3P3 3 INT1INT1 外部中断外部中断 1 1 定时器定时器 计数器 计数器 T0T0 T1T1 P3 4P3 4 T0T0 定时器 定时器 计数器计数器 0 0 的外部输入 的外部输入 P3 5P3 5 T1T1 定时器 定时器 计数器计数器 1 1 的外部输入 的外部输入 数据存储器选通 数据存储器选通 P3 6P3 6 WRWR 外部存储器写选通 低电平 外部存储器写选通 低电平 有效 输出 有效 输出 P3 7P3 7 RDRD 外部存储器读选通 低电平 外部存储器读选通 低电平 有效 输出 有效 输出 定时器定时器 计数器 计数器 T2T2 P1 0P1 0 T2T2 定时器 定时器 T2T2 的计数端 的计数端 P1 1P1 1 T2EXT2EX 定时器 定时器 T2T2 的外部输入端 的外部输入端 13 13 内部内部 RAMRAM 低低 128128 字节单元划分为哪字节单元划分为哪 3 3 个主要部分个主要部分 各部分主要功能是什么各部分主要功能是什么 答 片内答 片内 RAMRAM 低低 128128 单元的划分及主要功能单元的划分及主要功能 l l 工作寄存器组工作寄存器组 00H lFH 00H lFH 这是一个用寄存器直接寻址的区域 内部数据这是一个用寄存器直接寻址的区域 内部数据 RAMRAM 区的区的 0 31 00H lFH 0 31 00H lFH 共共 3232 个单个单 元 它是元 它是 4 4 个通用工作寄存器组 每个组包含个通用工作寄存器组 每个组包含 8 8 个个 8 8 位寄存器 编号为位寄存器 编号为 R0 R7R0 R7 2 2 位寻址区位寻址区 20H 2FH 20H 2FH 从内部数据从内部数据 RAMRAM 区的区的 32 47 20H 2FH 32 47 20H 2FH 的的 1616 个字节单元 共包含个字节单元 共包含 128128 位 是位 是 可位寻可位寻 址的址的 RAMRAM 区 这区 这 1616 个字节单元 既可进行字节寻址 又可实现位寻址 个字节单元 既可进行字节寻址 又可实现位寻址 3 3 字节寻址区字节寻址区 30H 7FH 30H 7FH 从内部数据从内部数据 RAMRAM 区的区的 48 127 30H 7FH 48 127 30H 7FH 共 共 8080 个字节单元 可以采用间接个字节单元 可以采用间接 字节寻址字节寻址 伊伦工作室 的方法访问 的方法访问 14 14 使单片机复位有几种方法使单片机复位有几种方法 复位后机器的初始状态如何复位后机器的初始状态如何 答 答 1 1 单片机复位方法单片机复位方法 单片机复位方法有单片机复位方法有 上电自动复位 按键电平复位和外部脉冲三种方式 如上电自动复位 按键电平复位和外部脉冲三种方式 如 题图题图 2 12 1 所示 所示 题图题图 2 12 1 2 2 复位后的初始状态复位后的初始状态 复位后机器的初始状态复位后机器的初始状态 即各寄存器的状态即各寄存器的状态 PC PC 之外之外 复位操作还对其他一些复位操作还对其他一些 特殊功能寄存器有影响特殊功能寄存器有影响 它们的复位状态如题表它们的复位状态如题表 2 12 1 所例所例 15 15 开机复位后 开机复位后 CPUCPU 使用的是哪组工作寄存器使用的是哪组工作寄存器 它们的地址是什么它们的地址是什么 CPU CPU 如何确如何确 定和改变当前工作寄存器组定和改变当前工作寄存器组 答 一般开机复位后都是选择第一组通用工作寄存器作为工作寄存器的 一共有答 一般开机复位后都是选择第一组通用工作寄存器作为工作寄存器的 一共有 4 4 组 分别为组 分别为 0 1 2 30 1 2 3 连续位于连续位于 00h00h 到到 1FH1FH 地址 地址 然后在机器中有个程序状态字然后在机器中有个程序状态字 PSWPSW 它的第四和第三位 它的第四和第三位 RS1RS1 RS0RS0 是用来选择工是用来选择工 作寄存器组的 可能不同机器地址稍有不同 他们俩的值和寄存器组的关系 作寄存器组的 可能不同机器地址稍有不同 他们俩的值和寄存器组的关系 RS1 RS0RS1 RS0 0 00 0 0 10 1 1 01 0 1 11 1 使用的工作寄存器使用的工作寄存器 0 0 1 1 2 2 3 3 地址地址 00 0700 07 08 0F08 0F 10 1710 17 18 1F18 1F 写程序的时候就是通过定义程序状态字来选择使用不同的寄存器组 也可以直接写程序的时候就是通过定义程序状态字来选择使用不同的寄存器组 也可以直接 对对 RS1RS1 和和 RS0RS0 赋值 赋值 最后一问同题 最后一问同题 7 7 16 16 程序状态寄存器程序状态寄存器 PSWPSW 的作用是什么的作用是什么 常用标志有哪些位常用标志有哪些位 作用是什么作用是什么 答 答 PSWPSW 是一个是一个 SFRSFR 特殊功能寄存器 特殊功能寄存器 位于片内位于片内 RAMRAM 的高的高 128B128B 具体地址具体地址 D0HD0H 00H FFH00H FFH 片内 片内 RAMRAM 的编址 的编址 8bits8bits 编址方法 编址方法 PSW ProgramPSW Program StatusStatus WordWord 程序状态字 程序状态字 PSWPSW 的常用标志位有哪些 的常用标志位有哪些 CY CarryCY Carry 进位标志位 进位标志位 AC AuxiliaryAC Auxiliary CarryCarry 辅助进位标志位 半进位标志位 辅助进位标志位 半进位标志位 F0F0 用户标志位用户标志位 RS1RS1 RS0RS0 用来选择当前工作寄存器组 用来选择当前工作寄存器组 R0 R7R0 R7 4 4 选选 1 1 OV OverflowOV Overflow 溢出标志位 溢出标志位 P ParityP Parity 奇偶校验位 奇偶校验位 伊伦工作室 17 17 位地址位地址 7CH7CH 与字节地址与字节地址 7CH7CH 如何区别如何区别 位地址位地址 7CH7CH 具体在片内具体在片内 RAMRAM 中的什么中的什么 位置位置 答 用不同的寻址方式来加以区分 即访问答 用不同的寻址方式来加以区分 即访问 128128 个位地址用位寻址方式 访问低个位地址用位寻址方式 访问低 128128 字节单元用字节寻址和间接寻址 字节单元用字节寻址和间接寻址 具体地址为具体地址为 2F2F 的第五位 即为的第五位 即为 7C7C 18 18 89C5189C51 单片机的时钟周期与振荡周期之间有什么关系单片机的时钟周期与振荡周期之间有什么关系 什么叫机器周期和指什么叫机器周期和指 令周期 令周期 答 时钟信号的周期称为机器状态周期 是振荡周期的两倍 一个机器周期是指答 时钟信号的周期称为机器状态周期 是振荡周期的两倍 一个机器周期是指 CPUCPU 访问存储器一次所需的时间 指令周期是执行一条指令所需的时间 访问存储器一次所需的时间 指令周期是执行一条指令所需的时间 19 19 一个机器周期的时序如何划分一个机器周期的时序如何划分 答 一个机器周期答 一个机器周期 12 12 个震荡周期个震荡周期 6 6 个时钟周期 状态周期 个时钟周期 状态周期 S1P1S1P1 S1P2S1P2 S2P1S2P1 S2P2S2P2 S3P1S3P1 S3P2S3P2 S4P1S4P1 S4P2S4P2 S5P1S5P1 S5P2S5P2 S6P1S6P1 S6P2S6P2 其中其中 s states state 状态 状态 p phasep phase 相位 相位 20 20 什么叫堆栈什么叫堆栈 堆栈指针堆栈指针 SPSP 的作用是什么的作用是什么 89C51 89C51 单片机堆栈的容量不能超过单片机堆栈的容量不能超过 多少字节多少字节 答 堆栈都是一种数据项按序排列的数据结构 只能在一端答 堆栈都是一种数据项按序排列的数据结构 只能在一端 称为栈顶称为栈顶 top top 对对 数据项进行插入和删除 要点 堆 顺序随意栈 后进先出数据项进行插入和删除 要点 堆 顺序随意栈 后进先出 Last In First Out Last In First Out 在调用子程序时需要保存调用函数的在调用子程序时需要保存调用函数的 CPUCPU 寄存器寄存器 PCPC 指针指针 PC PC 指针是被指针是被 CALLCALL 指令自动压入指令自动压入 SPSP 所指向的片内存储器所指向的片内存储器 CPU CPU 寄存器要由用户用寄存器要由用户用 PUSHPUSH 指令自行保指令自行保 存存 因此因此 SPSP 的作用就是一个指针的作用就是一个指针 当进行中断调用当进行中断调用 子函数调用时将现场数据压入子函数调用时将现场数据压入 SPSP 所指向的存储器所指向的存储器 SP SP 自动增加自动增加 1 1 或或 2 2 当中断结束当中断结束 RETI RETI 调用返回调用返回 RET POPRET POP 时将时将 SPSP 数据弹出数据弹出 SP SP 自动减自动减 1 1 或 或 2 2 80518051 最大为最大为 128128 字节的片内存储器字节的片内存储器 0X20 0X20 以上理论都可以做堆栈用以上理论都可以做堆栈用 9696 字节字节 8052 8052 为为 256256 字节字节 224224 字节可用 但这样便没有其它空间可用于数据存储现在的单片机字节可用 但这样便没有其它空间可用于数据存储现在的单片机 的程序一般都能用的程序一般都能用 C51C51 来来 不用关心堆栈大小与不用关心堆栈大小与 SPSP 寄存器寄存器 21 21 89C5189C51 有几种低功耗方式 如何实现 有几种低功耗方式 如何实现 答 空闲方式和掉电方式答 空闲方式和掉电方式 空闲方式和掉电方式是通过对空闲方式和掉电方式是通过对 SFRSFR 中的中的 PCONPCON 地址 地址 87H 87H 相应位置相应位置 1 1 而启动而启动 的 的 当当 CPUCPU 执行完置执行完置 IDL 1 PCON 1IDL 1 PCON 1 的指令后 系统进入空闲工作方式 这时 内 的指令后 系统进入空闲工作方式 这时 内 部时钟不向部时钟不向 CPUCPU 提供 而只供给中断 串行口 定时器部分 提供 而只供给中断 串行口 定时器部分 CPUCPU 的内部状态维的内部状态维 持 即包括堆栈指针持 即包括堆栈指针 SPSP 程序计数器 程序计数器 PCPC 程序状态字 程序状态字 PSWPSW 累加器 累加器 ACCACC 所有的所有的 内容保持不变 端口状态也保持不变 内容保持不变 端口状态也保持不变 ALEALE 和和 PSENPSEN 保持逻辑高电平 保持逻辑高电平 当当 CPUCPU 执行一条置执行一条置 PCON 1PCON 1 位 位 PDPD 为 为 1 1 的指令后 系统进入掉电工作方式 在的指令后 系统进入掉电工作方式 在 这种工作方式下 内部振荡器停止工作 由于没有振荡时钟 因此 所有的功能这种工作方式下 内部振荡器停止工作 由于没有振荡时钟 因此 所有的功能 伊伦工作室 部件都停止工作 但内部部件都停止工作 但内部 RAMRAM 区和特殊功能寄存器的内容被保留 而端口的输出区和特殊功能寄存器的内容被保留 而端口的输出 状态值都保存在对应的状态值都保存在对应的 SFRSFR 中 中 ALEALE 和和 PSENPSEN 都为低电平 都为低电平 22 22 PCPC 与与 DPTRDPTR 各有哪些特点 有何异同 各有哪些特点 有何异同 答 答 1 1 程序计数器程序计数器 PCPC 作为不可寻址寄存器的特点作为不可寻址寄存器的特点 程序计数器程序计数器 PCPC 是中央控制器申最基本的寄存器 是一个独立的计数器 存是中央控制器申最基本的寄存器 是一个独立的计数器 存 放着下一条将程序存储器中取出的指令的地址 放着下一条将程序存储器中取出的指令的地址 程序计数器程序计数器 PCPC 变化的轨迹决定程序的流程 程序计数器的宽度决定了程序变化的轨迹决定程序的流程 程序计数器的宽度决定了程序 存储器可以存储器可以 寻址的范围 寻址的范围 程序计数器程序计数器 PCPC 的基本工作方式有的基本工作方式有 程序计数器程序计数器 PCPC 自动加自动加 1 1 这是最基本的工作方式 也是这个专用寄存器 这是最基本的工作方式 也是这个专用寄存器 被称为计数被称为计数 器的原因 器的原因 执行条件或无条件转移指令时 程序计数器将被置入新的数值 程序的流执行条件或无条件转移指令时 程序计数器将被置入新的数值 程序的流 向发生变化 向发生变化 变化的方式有下列几种变化的方式有下列几种 带符号的相对跳转带符号的相对跳转 SJMPSJMP 短跳转 短跳转 AJMPAJMP 长跳转 长跳转 LJMPLJMP 及及 JMPJMP A DPTR A DPTR 等 等 在执行调用指令或响应中断时在执行调用指令或响应中断时 PC PC 的现行值 即下一条将要执行的指令的地址送入堆栈 加以保护的现行值 即下一条将要执行的指令的地址送入堆栈 加以保护 将子程序的入口地址或者中断矢量地址送入将子程序的入口地址或者中断矢量地址送入 PCPC 程序流向发生变化 执 程序流向发生变化 执 行子程序或中断服务程序行子程序或中断服务程序 子程序或中断服务程序执行完毕 遇到返回指令子程序或中断服务程序执行完毕 遇到返回指令 RETRET 或或 RETIRETI 时 将栈顶时 将栈顶 的内容送到的内容送到 PCPC 寄存器中 程序流程又返回到原来的地方 继续执行 寄存器中 程序流程又返回到原来的地方 继续执行 2 2 地址指针地址指针 DPTRDPTR 的特点的特点 地址指针地址指针 DPTRDPTR 的特点是 它作为片外数据存储器寻址用的地址寄存器的特点是 它作为片外数据存储器寻址用的地址寄存器 间接间接 寻址寻址 3 3 地址指针地址指针 DPTRDPTR 与程序计数器与程序计数器 PCPC 的异同的异同 相同之处相同之处 两者都是与地址有关的 两者都是与地址有关的 1616 位的寄存器 其中 位的寄存器 其中 PCPC 与程序存储器的地址与程序存储器的地址 有关 而有关 而 DPTRDPTR 与数据存储器的地址有关 与数据存储器的地址有关 作为地址寄存器使用时 作为地址寄存器使用时 PCPC 与与 DPTRDPTR 都是通过都是通过 P0P0 和和 P2P2 口口 作为作为 1616 位地址位地址 总线总线 输输 出的 但是 出的 但是 PCPC 的输出与的输出与 ALEALE 及及 PSENPSEN 有关有关 DPTR DPTR 的输出 则与的输出 则与 ALEALE RDRD 及及 WRWR 相联系 相联系 不同之处不同之处 PC PC 只能作为只能作为 1616 位寄存器对待 由于有自动加位寄存器对待 由于有自动加 1 1 的功能 故又称为计数器的功能 故又称为计数器 伊伦工作室 DPTRDPTR 可以作为可以作为 1616 位寄存器对待 也可以作为两个位寄存器对待 也可以作为两个 8 8 位寄存器对待 位寄存器对待 PC PC 是不可以访问的 有自己独特的变化方式 它的变化轨迹决定了程序是不可以访问的 有自己独特的变化方式 它的变化轨迹决定了程序 执行的流程执行的流程 DPTRDPTR 是可以访问的 如是可以访问的 如 MOVMOV DPTRDPTR XXXXH XXXXH INCINC DPTPDPTP 23 23 89C5189C51 端口锁存器的端口锁存器的 读读 修改修改 写写 操作与操作与 读引脚读引脚 操作有何区别 操作有何区别 答 指令系统中有些指令读锁存器的值答 指令系统中有些指令读锁存器的值 有些指令则读引脚上的值 读锁存器指有些指令则读引脚上的值 读锁存器指 令是从锁存器中读取一个值并进行处理令是从锁存器中读取一个值并进行处理 把处理后的值把处理后的值 原值或已修改后的值原值或已修改后的值 重重 新写入锁存器中 这类指令称为读新写入锁存器中 这类指令称为读 修改修改 写指令 写指令 对于读对于读 修改修改 写指令 直接读锁存器而不是读端口引脚写指令 直接读锁存器而不是读端口引脚 是因为从引脚上读是因为从引脚上读 出的数据不一定能真正反映锁存器的状态 出的数据不一定能真正反映锁存器的状态 第三章第三章 1 1 指令 指令 CPUCPU 根据人的意图来执行某种操作的命令根据人的意图来执行某种操作的命令 指令系统 一台计算机所能执行的全部指令集合指令系统 一台计算机所能执行的全部指令集合 机器语言 用二进制编码表示 计算机能直接识别和执行的语言机器语言 用二进制编码表示 计算机能直接识别和执行的语言 汇编语言 用助记符 符号和数字来表示指令的程序语言汇编语言 用助记符 符号和数字来表示指令的程序语言 高级语言 独立于机器的 在编程时不需要对机器结构及其指令系统有深入了解高级语言 独立于机器的 在编程时不需要对机器结构及其指令系统有深入了解 的通用性语言的通用性语言 2 2 见第见第 1 1 题题 3 3 简述 简述 89518951 的汇编指令格式 答 的汇编指令格式 答 操作码操作码 目的操作数目的操作数 源操作数 源操作数 4 4 简述 简述 89518951 的寻址方式和所能涉及的寻址空间 的寻址方式和所能涉及的寻址空间 寻址方式寻址方式寻址空间寻址空间 立即数寻立即数寻 址址 程序存储器程序存储器 ROMROM 直接寻址直接寻址片内片内 RAMRAM 低低 128B128B 特殊功能寄存器 特殊功能寄存器 寄存器寻寄存器寻 址址 工作寄存器工作寄存器 R0 R7R0 R7 A A B B C C DPTRDPTR 寄存器间寄存器间 接寻址接寻址 片内片内 RAMRAM 低低 128B128B 片外 片外 RAMRAM 变址寻址变址寻址程序存储器 程序存储器 A PC A DPTR A PC A DPTR 相对寻址相对寻址程序存储器程序存储器 256B256B 范围 范围 PC PC 偏移量 偏移量 伊伦工作室 位寻址位寻址片内片内 RAMRAM 的的 20H 2FH20H 2FH 字节地址 部分字节地址 部分 SFRSFR 5 5 访问特殊功能寄存器和外数据存储器 应采用那些寻址方式 访问特殊功能寄存器和外数据存储器 应采用那些寻址方式 答 答 SFRSFR 直接寻址 位寻址 寄存器寻址 片外 直接寻址 位寻址 寄存器寻址 片外 RAMRAM 寄存器间接寻址 寄存器间接寻址 6 6 89518951 中已知 中已知 30H30H 38H 38H 请分析以下各是什么指令 说明源操作数的寻址 请分析以下各是什么指令 说明源操作数的寻址 方式以及执行结果 方式以及执行结果 MOVMOV A A 40H40H 直接寻址 直接寻址 40H40H A A MOVMOV R0R0 A A 寄存器寻址 寄存器寻址 A A R0 R0 MOVMOV P1P1 0F0H 0F0H 立即数寻址 立即数寻址 0F0 P10F0 P1 MOVMOV R0 30H R0 30H 直接寻址 直接寻址 30H30H R0R0 MOVMOV DPTR 3848HDPTR 3848H 立即数寻址 立即数寻址 3848H DPTR3848H DPTR MOVMOV 40H 38H40H 38H 直接寻址 直接寻址 38H38H 40H 40H MOVMOV R0 30HR0 30H 直接寻址 直接寻址 30H30H R0 R0 MOVMOV P0 R0P0 R0 寄存器寻址 寄存器寻址 R0R0 P0 P0 MOVMOV 18H18H 30H 30H 立即数寻址 立即数寻址 30H 18H30H 18H MOVMOV A A R0 R0 寄存器间接寻址 寄存器间接寻址 R0 R0 A A MOVMOV P2P2 P1P1 直接寻址 直接寻址 P1P1 P2 P2 最后结果 最后结果 R0R0 38H 38H A A 40H 40H P0P0 38H 38H P1P1 P2P2 0F0H 0F0H DPTRDPTR 3848H 3848H 18H18H 30H 30H 30H30H 38H 38H 38H38H 40H 40H 40H40H 40H 40H 48H48H 38H 38H 注意 注意 左边是内容 右边是单元左边是内容 右边是单元 7 7 89518951 片内高片内高 128128 字节的地址寻址要注意什么字节的地址寻址要注意什么 答 答 用直接寻址 位寻址 寄存器寻址用直接寻址 位寻址 寄存器寻址 8 8 指出些列指令的本质 指出些列指令的本质 MOVMOV A DATAA DATA 直接寻址直接寻址2 2 字节字节 1 1 周期周期 MOVMOV A DATAA DATA 立即数寻址立即数寻址2 2 字节字节 1 1 周期周期 MOVMOV DATA1 DATA2DATA1 DATA2 直接寻址直接寻址3 3 字节字节 2 2 周期周期 MOVMOV 74H 78H74H 78H 立即数寻址立即数寻址3 3 字节字节 2 2 周期周期 如果想查某一指令的机器码 字节数或周期数可查阅书本后面的附录如果想查某一指令的机器码 字节数或周期数可查阅书本后面的附录 A A 9 9 设 设 R0R0 的内容分为的内容分为 32H32H A A 的内容为的内容为 48H48H 请指出在执行下列程序段后上 请指出在执行下列程序段后上 述各单元内容的变化 述各单元内容的变化 MOVMOVA R0A R0 R0 80H A R0 80H A MOVMOV R0 40H R0 40H 40H 08H R0 40H 08H R0 MOVMOV40H A40H A A 80 40H A 80 40H MOVMOVR0 35HR0 35H 35H R0 35H R0 最后结果 最后结果 R0R0 35H 35H A A 80H 80H 32H32H 08H 08H 40H40H 80H 80H 1010 如何访问 如何访问 SFRSFR 可采用那些寻址方式 可采用那些寻址方式 答 用直接寻址 位寻址 寄存器寻址答 用直接寻址 位寻址 寄存器寻址 1111 如何访问片外 如何访问片外 RAMRAM 可使用那些寻址方式 可使用那些寻址方式 伊伦工作室 答 只能采用寄存器间接寻址 用答 只能采用寄存器间接寻址 用 MOVXMOVX 指令 指令 1212 如何访问片内 如何访问片内 RAMRAM 可使用那些寻址方式 可使用那些寻址方式 答 低答 低 128128 字节 直接寻址 位寻址 寄存器间接寻址 寄存器寻址 字节 直接寻址 位寻址 寄存器间接寻址 寄存器寻址 R0 R7R0 R7 高高 128128 字节 直接寻址 位寻址 寄存器寻址字节 直接寻址 位寻址 寄存器寻址 1313 如何访问片内外程序存储器 可使用那些寻址方式 如何访问片内外程序存储器 可使用那些寻址方式 答 采用变址寻址 用答 采用变址寻址 用 MOVCMOVC 指令 指令 1414 说明十进制调整的原因和方法 说明十进制调整的原因和方法 答 压缩答 压缩 BCDBCD 码在进行加法运算时应逢十进一 而计算机只将其当作十六进制数码在进行加法运算时应逢十进一 而计算机只将其当作十六进制数 处理 此时得到的结果不正确 用处理 此时得到的结果不正确 用 DADA A A 指令调整 加指令调整 加 06H06H 60H60H 66H66H 1515 说明 说明 89518951 布尔机处理机功能 布尔机处理机功能 答 用来进行位操作答 用来进行位操作 1616 ANLANL A A 17H 17H 83H 17H 03H A83H 17H 03H A ORLORL 17H17H A A 34H 03H 37H 17H34H 03H 37H 17H XRLXRL A A R0 R0 03H 37H 34H03H 37H 34H CPLCPL A A 34H34H 求反等于求反等于 CBHCBH 所以 所以 A A CBH CBH 1717 1 1 SETBSETB ACC 0ACC 0 或或 SETBSETB E0HE0H E0H E0H 是累加器的地址是累加器的地址 2 CLR 2 CLR ACC 7ACC 7 CLRCLR ACC 6ACC 6 CLRCLR ACC 5ACC 5 CLRCLR ACC 4ACC 4 3 CLR 3 CLR ACC 6ACC 6 CLRCLR ACC 5ACC 5 CLRCLR ACC 4ACC 4 CLRCLR ACC 3ACC 3 1818 MOVMOV 27H27H R7R7 MOVMOV 26H26H R6R6 MOVMOV 25H25H R5R5 MOVMOV 24H24H R4R4 MOVMOV 23H23H R3R3 MOVMOV 22H22H R2R2 MOVMOV 21H21H R1R1 MOVMOV 20H20H R0R0 1919 MOVMOV 2FH2FH 2020 MOVMOV 2EH2EH 2121 MOVMOV 2DH2DH 2222 2020 编程 进行两个 编程 进行两个 1616 位数的减法 位数的减法 6F5DH 13B4H 6F5DH 13B4H 结果存入内部结果存入内部 RAMRAM 的的 3030 和和 伊伦工作室 31H31H 单元 单元 30H30H 存低八位 存低八位 CLRCLR C C MOVMOV A A 5DH 5DH 被减数的低 被减数的低 8 8 位位 A A MOVMOV R2R2 B4H B4H 减数低 减数低 8 8 位位 R2 R2 SUBBSUBB A A R2R2 被减数减去减数 差 被减数减去减数 差 A A MOVMOV 30H30H A A 低 低 8 8 位结果位结果 30H 30H MOVMOV A A 6FH 6FH 被减数的高 被减数的高 8 8 位位 A A MOVMOV R2R2 13H 13H 减数高 减数高 8 8 位位 R2 R2 SUBBSUBB A A R2R2 被减数减去减数 差 被减数减去减数 差 A A MOVMOV 31H31H A A 高 高 8 8 位结果位结果 30H 30H 注意 如果在你的程序中用到了进位位 在程序开始的时候要记得清注意 如果在你的程序中用到了进位位 在程序开始的时候要记得清 0 0 进位位进位位 2121 编程 若累加器 编程 若累加器 A A 满足下列条件 则程序转至满足下列条件 则程序转至 LABELLABEL 存储单元 设存储单元 设 A A 中为无中为无 符号数 符号数 1 1 A 10A 10 CJNECJNE A A 0AH 0AH L1L1 A A 与 与 1010 比较 不等转比较 不等转 L1L1 LJMPLJMP LABELLABEL 相等转 相等转 LABELLABEL L1L1 JNCJNC LABELLABEL A A 大于 大于 1010 转 转 LABELLABEL 或者 或者 CLRCLR C C SUBBSUBB A A 0AH 0AH JNCJNC LABELLABEL 2 2 A A 1010 CJNECJNE A A 0AH 0AH L1L1 A A 与 与 1010 比较 不等转比较 不等转 L1L1 RETRET 相等结束 相等结束 L1L1 JNCJNC LABELLABEL A A 大于 大于 1010 转 转 LABELLABEL RETRET A A 小于 小于 1010 结束 结束 或者 或者 CLRCLR C C SUBBSUBB A A 0AH 0AH JNCJNC L1L1 RETRET L1L1 JNZJNZ LABELLABEL RETRET 3 3 A 10A 10 CJNECJNE A A 0AH 0AH L1L1 A A 与 与 1010 比较 不等转比较 不等转 L1L1 L2L2 LJMPLJMP LABELLABEL 相等转 相等转 LABELLABEL L1L1 JCJC L2L2 A A 小于 小于 1010 转 转 L2L2 伊伦工作室 RETRET 或者 或者 CLRCLR C C SUBBSUBB A A 0AH 0AH JCJC LABELLABEL JZJZ LABELLABEL RETRET 2222 SPSP 23H 23H PCPC 3412H 3412H 参看书上参看书上 8080 页页 2323 SPSP 27H 27H 26H26H 48H 48H 27H27H 23H 23H PCPC 3456H 3456H 参看书上参看书上 7979 页页 2424 不能 不能 ACALLACALL 是短转指令 可调用的地址范围是是短转指令 可调用的地址范围是 2KB2KB 在看这个题的时候同时看一下在看这个题的时候同时看一下 AJMPAJMP 指令 同时考虑调用指令指令 同时考虑调用指令 ACALLACALL 和和 LCALLLCALL 指指 令和令和 RETRET 指令的关系 指令的关系 2525 编程 查找内部编程 查找内部 RAMRAM 中中 20H 50H20H 50H 单元中是否有单元中是否有 0AAH0AAH 这一数据 若有则将这一数据 若有则将 51h51h 单元置为单元置为 01H01H 如无 则将 如无 则将 51H51H 单元清零 单元清零 MOVMOV R2R2 31H 31H 数据块长度 数据块长度 R2 R2 MOVMOV R0R0 20H 20H 数据块首地址 数据块首地址 R0 R0 LOOPLOOP MOVMOV A A R0 R0 待查找的数据 待查找的数据 A A CLRCLR C C 清进位位 清进位位 SUBBSUBB A A 0AAH 0AAH 待查找的数据是 待查找的数据是 0AAH0AAH 吗吗 JZJZ L1L1 是 转 是 转 L1L1 INCINC R0R0 不是 地址增 不是 地址增 1 1 指向下一个待查数据 指向下一个待查数据 DJNZDJNZ R2R2 LOOPLOOP 数据块长度减 数据块长度减 1 1 不等于 不等于 0 0 继续查找 继续查找 MOVMOV 51H51H 00H 00H 等于 等于 0 0 未找到 未找到 00H 51H00H 51H RETRET L1L1 MOVMOV 51H51H 01H 01H 找到 找到 01H 51H01H 51H RETRET 2626 编程查找内部 编程查找内部 RAMRAM 的的 20H 50H20H 50H 单元中出现单元中出现 00H00H 的次数并将结果存入的次数并将结果存入 51H51H 中 中 MOVMOV R2R2 31H 31H 数据块长度 数据块长度 R2 R2 MOVMOV R0R0 20H 20H 数据块首地址 数据块首地址 R0 R0 LOOPLOOP MOVMOV A A R0 R0 待查找的数据 待查找的数据 A A JNZJNZ L1L1 不为 不为 0 0 转 转 L1L1 I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论