微机原理及应用课程学习总结与例程分析.doc

上传人:飞****2 文档编号:60099956 上传时间:2022-11-13 格式:DOC 页数:9 大小:92.50KB
返回 下载 相关 举报
微机原理及应用课程学习总结与例程分析.doc_第1页
第1页 / 共9页
微机原理及应用课程学习总结与例程分析.doc_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《微机原理及应用课程学习总结与例程分析.doc》由会员分享,可在线阅读,更多相关《微机原理及应用课程学习总结与例程分析.doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、目录学习总结第一章 计算机基础知识1第二章8086微处理器2第三章8086的指令系统3第四章 汇编语言程序设计4第五章 输入输出接口5例程分析例一:简述CPU执行一条指令的过程6例二:已知各寄存器和存储单元的状态如图所示,请阅读下列程序段,并将中间结果填入相应指令右边的空格。7例三:编写一程序,使得计算机屏幕上每隔五秒显示一行字符Good morning,按任意键结束7学习总结第一章 计算机基础知识本章我们主要学到了不同进位计数制计数方法、不同进位制数之间相互转换的方法、数和字符在计算机中的表示方法、简单的算术运算以及计算机系统的组成。下边将本章的知识点作了归类,图为本章的知识要点图与计算机系

2、统组成的示意图。本章知识要点数制二进制数(B)八进制数(Q)十六进制数(H)十进制数(D)B)码制带符号数编码奇偶校验码字符编码原码反码补码奇校验码偶校验码ASCII码BCD码数字编码规则字母编码规则压缩BCD码非压缩BCD码计算机系统组成计算机系统组成硬件主机外部设备中央处理器(CPU)半导体存储器控制器运算器ROMRAM输入设备输出设备软件系统软件应用软件操作系统:如DOS、Windows、Unix、Linux等其他系统软件用户应用软件其他应用软件各种计算机语言处理软件:如汇编、解释、编译等软件第二章 8086微处理器本章我们主要学习从应用角度上理解8086CPU的内部组成、编程结构、引脚

3、信号功能、最小工作模式的系统配置、8086的存储器组织、基本时序等概念。下面这一章知识的结构图。本章知识要点Intel 8086微处理器时钟发生器(8284)地址锁存器(74LS373、8282)存储器组织存储器逻辑分段存储器分体三总线(DB、AB、CB)时序时钟周期(T状态)基本读总线周期系统配置(最小模式)8086CPU数据收发器(8286、74LS245)逻辑地址物理地址奇地址存储体(BHE)偶地址存储体(A0)总线周期指令周期基本写总线周期复位操作时序中断响应时序寄存器的复位值执行单元EU(AX、BX、CX、DX、SP、BP、SI、DI、标志寄存器)内部组成总线接口单元BIU(CS、D

4、S、SS、ES、IP)地址/数据控制负责地址BHE/S7、ALE引脚功能(最小模式)地址/状态数据允许和收发 DEN、DT/R负责读写RD、WR、M/IO负责中断INTR、NMI、INTA负责总线HOLD、HLDA协调CLK、READY、TEST模式选择MN/MX=5V第三章 8086的指令系统本章学习的是8086CPU指令的寻址方式,每条指令的格式、功能及标志的影响;同时还涉及到存储器单元的物理地址计算、标志位填写和堆栈操作。下图为本章知识结构图。立即数寻址、寄存器寻址、存储器寻址.操作数寻址方式本章知识要点逻辑地址、物理地址指令功能指令格式对标志位影响填写标志位堆栈操作(入栈、出栈)堆栈指

5、针(SP)堆栈结构(后进先出)直接寻址立即数寻址寄存器间接寻址寄存器寻址寄存器相对寻址存储器寻址寻址方式基址变址寻址串操作寻址相对基址变址寻址I/O端口寻址隐含寻址指令功能数据传送类(通用数据传送指令、堆栈指令、交换指令、I/O传送指令、换码指令、有效地址传送指令、标志寄存器传送指令)算术运算类指令(加法指令,减法指令, 乘法指令,除法指令,BCD码调整指令)逻辑类指令(逻辑运算指令、逻辑移位操作指令)串操作类指令(串传送、比较、扫描、串存和取指令)控制转移类指令(条件和无条件转移、子程序调用和返回指令、子程序调用和返回、中断)、)处理器控制类指令其他应用软件用户应用软件应用软件第四章 汇编语

6、言程序设计本章主要内容是汇编语言类别、伪指令语句格式和作用、基本程序结构、调用程序和被调用程序之间数据传递途径以及汇编源程序上机调试过程。本章重点是阅读程序和编写程序。下边是本章的知识结构图。汇编语言语句类别程序基本结构顺序结构本章知识要点实指令语句分支结构循环结构过程(子程序)伪指令语句宏指令语句参数传递途径寄存器约定存储器约定堆栈传递程序开发步骤:编 辑汇 编链 接调试运行符号定义伪指令 EQU、=伪指令语句数据定义伪指令 DB、DW、DD段定义伪指令 SEGMENTENDS过程定义伪指令 PROC、ENDP段指派伪指令 ASSUME程序定位伪指令 ORG汇编结束伪指令 END其他伪指令.

7、第五章 输入输出接口本章学习的输入/输出接口的基本概念,包括输入/输出接口的作用、内部结构、传送信息的分析、IO端口编址以及主机通过接口与外设之间数据传送的方式。下边是本章的知识结构图。IO接口概念主机通过接口与外设数据传送方式本章知识要点接口作用接口传送信息的种类IO端口数据传送方式程序控制方式控制信息状态信息数据信息(开关量、脉冲量、数据量、模拟量)IO端口编址方式单独编址统一编址IO端口号简单的I/O芯片的使用中断控制方式直接存储器存取控制方式(DMA)无条件传送有条件传送(查询)例程分析例一:简述CPU执行一条指令的过程计算机每执行一条指令都可分为三个阶段进行。即取指令-分析指令-执行

8、指令。取指令的任务是:根据程序计数器PC中的值从程序存储器读出现行指令,送到指令寄存器。分析指令阶段的任务是:将指令寄存器中的指令操作码取出后进行译码,分析其指令性质。如指令要求操作数,则寻找操作数地址。计算机执行程序的过程实际上就是逐条指令地重复上述操作过程,直至遇到停机指令可循环等待指令。一般计算机进行工作时,首先要通过外部设备把程序和数据通过输入接口电路和数据总线送入到存储器,然后逐条取出执行。但单片机中的程序一般事先我们都已通过写入器固化在片内或片外程序存储器中。因而一开机即可执行指令。下面我们将举个实例来说明指令的执行过程:开机时,程序计算器PC变为0000H。然后单片机在时序电路作

9、用下自动进入执行程序过程。执行过程实际上就是取出指令(取出存储器中事先存放的指令阶段)和执行指令(分析和执行指令)的循环过程。例如执行指令:MOV A,#0E0H,其机器码为“74H E0H”,该指令的功能是把操作数E0H送入累加器,0000H单元中已存放74H,0001H单元中已存放E0H。当单片机开始运行时,首先是进入取指阶段,其次序是:1 程序计数器的内容(这时是0000H)送到地址寄存器;2 程序计数器的内容自动加1(变为0001H);3 地址寄存器的内容(0000H)通过内部地址总线送到存储器,以存储器中地址译码电跟,使地址为0000H的单元被选中;4 CPU使读控制线有效;5 在读

10、命令控制下被选中存储器单元的内容(此时应为74H)送到内部数据总线上,因为是取指阶段,所以该内容通过数据总线被送到指令寄存器。至此,取指阶段完成,进入译码分析和执行指令阶段。由于本次进入指令寄存器中的内容是74H(操作码),以译码器译码后单片机就会知道该指令是要将一个数送到A累加器,而该数是在这个代码的下一个存储单元。所以,执行该指令还必须把数据(E0H)从存储器中取出送到CPU,即还要在存储器中取第二个字节。其过程与取指阶段很相似,只是此时PC已为0001H。指令译码器结合时序部件,产生74H操作码的微操作系列,使数字E0H从0001H单元取出。因为指令是要求把取得的数送到A累加器,所以取出

11、的数字经内部数据总线进入A累加器,而不是进入指令寄存器。至此,一条指令的执行完毕。单片机中PC=0002H,PC在CPU每次向存储器取指或取数时自动加1,单片机又进入下一取指阶段。这一过程一直重复下去,直至收到暂停指令或循环等待指令暂停。CPU就是这样一条一条地执行指令,完成所有规定。例二:已知各寄存器和存储单元的状态如图所示,请阅读下列程序段,并将中间结果填入相应指令右边的空格。CPURAMCS:3000CX:FFFF20506:06DS:2050BX:000420507:00SS:50A0SP:000020508:87ES:0FFFDX:17C620509:1AIP:0000AX:8E9D

12、2050A:3EDI:000ABP:14032050B:C5SI:0008CF:12050C:2FMOVDX,BX+4;DX=(1A87H)PUSHDS;SP=(FFFEH)SP=(2050H)TESTAX,DX;AX=(8E9DH)SF=(0)ADCAL,DI;AL=(DBH)XCHGAX,DX;AX=(1A87H)DX=(8eDBH)XORAH,BL;AH=(1EH)SARAH,1;AH=(0FH)CF=(0)例三:编写一程序,使得计算机屏幕上每隔五秒显示一行字符Good morning,按任意键结束1.调试通过 ,用MASM编译,其实逻辑很简单,用中断21H的9号中断服务程序显示字符串G

13、ood morning(注意,字符串应该以$结束),代码如下: MOV DX,OFFSET CONTENT MOV AH,9 INT 21H2。然后调用延时子程序延时5s,我的延时不一定精确,只是象征性的延时,你可以根据延时时间具体计算,很容易的,延时子程序在DELAY,你只需改变BX,CX的值即可改变延时时间3.最后用中断16H的1号中断服务程序判断是否有按键按下,若有键盘按下,该功能置ZF = 0,否则 ZF = 1,代码如下: MOV AH,01H INT 16H4.判断ZF是否为1 ,为1 ,证明无按键按下,跳转A1继续输出字符串,否则结束程序以上就是程序的思路,具体程序如下:DATA

14、 SEGMENTCONTENT DB Good morning ,$DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX A1: MOV DX,OFFSET CONTENT MOV AH,9 INT 21H CALL DELAY MOV AH,01H INT 16H JZ A1 MOV AH,4CH INT 21HDELAY PROC NEAR MOV BX,25000A2:MOV CX,20000 LOOP $ DEC BX JNZ A2 RETDELAY ENDP CODE ENDS END START

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁