为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

微型计算机原理及应用实验ppt课件

2021-02-25 86页 ppt 323KB 16阅读

用户头像 机构认证

爱赢

公司经营范围:网络软件设计、制作、图文设计、影视制作(编辑)

举报
微型计算机原理及应用实验ppt课件微型计算机原理及应用实验电子信息技术实验教学中心实验1DEBUG调试程序的应用一、实验目的掌握DEBUG调试程序的常用命令,熟悉用DEBUG调试程序对EXE文件的调试过程,并具有一定的分析运行结果的能力。二、实验内容编写一个完整的一位数加法运算程序,并生成EXE文件;利用DEBUG调试EXE文件的执行过程,并与源程序进行对比。三、DEBUG常用命令1.汇编命令A格式:A段寄存器名:偏移地址A段地址:偏移地址A偏移地址A功能:用该命令可以将汇编语言程序直接写入内存。2.显示内存命令D格式:D段寄存器名:偏移地址D段地址:偏移地址...
微型计算机原理及应用实验ppt课件
微型计算机原理及应用实验电子信息技术实验教学中心实验1DEBUG调试程序的应用一、实验目的掌握DEBUG调试程序的常用命令,熟悉用DEBUG调试程序对EXE文件的调试过程,并具有一定的分析运行结果的能力。二、实验内容编写一个完整的一位数加法运算程序,并生成EXE文件;利用DEBUG调试EXE文件的执行过程,并与源程序进行对比。三、DEBUG常用命令1.汇编命令A:A段寄存器名:偏移地址A段地址:偏移地址A偏移地址A功能:用该命令可以将汇编语言程序直接写入内存。2.显示内存命令D格式:D段寄存器名:偏移地址D段地址:偏移地址D偏移地址D功能:显示指定内存范围的内容。3.修改内存单元内容命令E格式:E地址内容表E地址功能:修改内存单元内容4.填充内存命令F格式:E地址范围内容表功能:将内容表中的内容重复装入内存的指定范围内。5.内存移动命令M格式:M源地址范围目标起始地址功能:把源地址范围的内容移动到目标起始地址开始的存储单元。6.比较命令C格式:C源地址范围目标起始地址功能:比较两个内存区域的内容是否相同,相同时不显示任何信息,不相同时显示不相同的内容7.搜索指定内容命令S格式:S地址范围内容表功能:在指定地址范围内搜索内容表中的内容。8.查看修改寄存器内容命令R格式:RR寄存器名功能:查看或修改寄存器内容关于标志位:OF:OV/NV有/无;DF:DN/UP减/增;IF:EI/DI允许/禁止;SF:NG/PL负/正;ZF:ZR/NZ零/非零;AF:AC/NA有/无;PF:PE/PO偶/奇;CF:CY/NC有/无。9.单步执行命令T格式:T地址T地址条数功能:单步执行指令10.反汇编命令U格式:U地址U地址范围功能:将指定内存的内容显示成汇编语言形式。11.命名命令N格式:N路径和文件名12.读盘命令L格式:L地址驱动器号起始扇区号扇区数L地址L功能:将N命令指定的文件或磁盘扇区内容读到内存。13.写盘命令W格式:W地址驱动器号起始扇区号扇区数W地址W功能:将内存内容写到N命令指定的文件或磁盘扇区中。14.输入命令I格式:I端口地址功能:将端口的内容传送到累加器AL中。15.输出命令O格式:O端口地址功能:将累加器AL的内容传送到端口中。16.运行命令G格式:G=地址G功能:从当前地址或指定地址开始执行指令。17.十六进制运算命令H格式:H数据1数据2功能:对数据1和数据2进行十六进制加法和减法运算。18.P命令格式:P功能:在下一条指令执行之前停止19.退出命令Q格式:Q功能:退出DEBUG调试环境。实验2算术运算程序一、实验目的二、实验内容掌握汇编语言中的数值接收方法;掌握算术运算程序的编写与结果显示方法;掌握宏定义与调用方法从键盘接收运算式,编程实现两位十进制数的算术运算(加、减、乘、除),若输入的不是数字或运算符,进行错误处理,按Esc键退出。三、编程提示定义一个显示单字符的宏;定义一个能接收两位数的子程序,并将其转换成二进制,若接收的不是数字,进行错误处理,其算法为:退一格,显示一个空格,再退一格。若接收的为ESC键退出;主程序的编程如图2.1所示。实验3字符串处理程序设计一、实验目的二、实验内容掌握串操作程序设计的基本方法;掌握串查找与替换的方法;掌握字符串接收和显示的方法;掌握循环和分支程序设计方法。编程实现字符接收、字符转换、字符显示等操作;具体要求:从键盘接收30个字符存入变量X中,将X中的字符传送到变量Y中,将变量Y中的空格字符转换成字符“0”,回车换行后显示Y中的内容。三、编程提示编程流程如图3.1所示。实验4数值处理程序设计一、实验目的二、实验内容掌握数组元素的输入方法;掌握一般的排序算法。编程实现数值输入、数组排序、显示等基本操作;具体要求:从键盘输入20个有符号两位十进制数,编程对其从小到大进行排序,并显示排序后的结果,以逗号分隔。三、参考程序dispcmacroxmovdl,xmovah,2int21hendmdatasegmentxdb20dup(?)dataendscodesegmentassumecs:code,ds:datago:movax,datamovds,ax接收20个有符号数的程序段movbx,19l0:movcx,19leasi,xl1:lodsbcmpal,[si]jgel2movah,[si]mov[si],almov[si-1],ahl2:loopl1decbxcmpbx,0jnel0movcx,20l3:lodsbcmpal,0jgel4pushaxdispc'-'popaxnegall4:aamorax,3030hmovbh,alcmpah,30hjel5dispcahl5:dispcbhdispc','loopl3dispc8dispc20hmovah,7int21hmovah,4chint21hcodeendsendgo实验5文件、文件夹操作程序设计一、实验目的掌握在磁盘上建立文件夹的程序设计方法;掌握在文件夹下建立文件的程序设计方法;掌握对文件的读、写、关闭的程序设计方法二、实验内容编程实现文件、文件夹的建立、写入、字符串接收等基本操作;具体要求:①清屏,将光标置于5行,0列,从键盘接收最多80个字符的字符串,将接收字符串中的小写字母全部转换成大写,其余不变;②从10行,0列开始显示转换后的字符串;③在D盘上建立一文件夹USER;④将转换后的字符串写入文件'D:\USER\STRING.TXT中。(注:文件操作时要求有相应的提示信息)三、参考程序dispsmacroxmovah,9leadx,xint21hendmdatasegmentbufferdb80,?,81dup(0)pfnamedb'D:\USER',0fnamedb'D:\USER\STRING.TXT',0d1db'Createpaperfileerror',0dh,0ah,'$'d2db'Createfileerror',0ah,0dh,'$'d3db'Writefileerror',0ah,0dh,'$'d4db'Closefileerror',0ah,0dh,'$‘d5db'Operatesucceed',0ah,0dh,'$'d6db0ah,0dh,'$'dataendscodesegmentassumecs:code,ds:datago:movax,datamovds,axmovah,2movbh,0movdx,0int10hmoval,20hmovah,9movcx,2000movbl,12hint10hmovah,2movbh,0movdh,5movdl,0int10hmovah,0ahleadx,bufferint21hmovcl,buffer+1movch,0leasi,buffer+2l1:lodsbcmpal,’a’jbl2cmpal,’z’jal2xoral,20hmov[si-1],all2:loopl1movbyteptr[si],'$'movah,2movbh,0movdh,10movdl,0int10hdispsbuffer+2dispsd6movah,39hleadx,pfnameint21hjncl1dispsd1jmpl6l2:movah,5bhmovcx,0leadx,fnameint21hpushaxjncl3dispsd2jmpl6l3:movah,40hpopbxmovcl,buffer+1movch,0leadx,buffer+2int21hjncl4dispsd3jmpl6l4:movah,3ehint21hjncl5dispsd4jmpl6l5:dispsd5l6:movah,7int21hmovah,4chint21hcodeendsendgo实验6图形程序设计一、实验目的二、实验内容掌握屏幕显示方式的设置方法;掌握写象素点的方法;掌握宏的定义和调用方法。编程实现几何图形的绘制,不同颜色的填充;具体要求:将屏幕设置成640*480,在屏幕上画5个几何图形:空心正方形、空心长方形、实心正方形、实心长方形、空心直角等腰三角形。大小、颜色、位置自定。三、参考程序sxfkmacrox1,y1,x2,y2,color;画实心矩形(左上顶点坐标,locall1,l2右下顶点坐标,颜色)movah,0chmoval,colormovdx,y1l1:movcx,x1l2:int10hinccxcmpcx,x2jbel2incdxcmpdx,y2jbel1endmkxfkmacrox1,y1,x2,y2,color;画空心矩形(左上顶点坐标,locall1,l2,l3,l4右下顶点坐标,颜色)movah,0chmovdx,y1movcx,x1moval,colorl1:int10hinccxcmpcx,x2jbl1l2:int10hincdxcmpdx,y2jbl2l3:int10hdeccxcmpcx,x1jal3l4:int10hdecdxcmpdx,y1jal4endmsjxmacrox1,y1,long,color;画等腰直角三角形(左上locall1,l2,l3顶点坐标,腰长,颜色)movah,0chmoval,colormovdx,y1movcx,x1movsi,longaddsi,dxl1:int10hincdxcmpdx,sijbel1movdi,longadddi,cxl2:int10hinccxcmpcx,dijbel2movcx,x1movdx,y1l3:inccxincdxint10hcmpcx,dijbl3endmcodesegmentassumecs:codego:movax,0012hint10hmovah,0bhmovbx,1int10hsjx50,50,125,4kxfk1,2,241,242,3sxfk10,250,320,470,6sxfk339,179,639,479,5kxfk270,5,630,170,9movah,7int21hmovah,4chint21hcodeendsendgo实验7中断控制实验一、实验目的二、实验内容了解Windows下中断处理过程;比较中断和查询两种数据交换方法的效率差别。用查询和中断方式分别实现控制指示灯,实验电路如图。要求直接用手动产生的单脉冲作为中断请求信号,每按一次单脉冲产生一次中断,让8个指示灯显示一秒钟的01010101,否则让指示灯显示10101010。然后在任务栏比较中断和查询方式下CPU利用率的差别。中断方法:将8255的A口设为输出,IRQ直接接到正脉冲,线路连接如图7.1所示;查询方法:将8255的A口设为输出接指示灯,C口设为输入,将PC0接正脉冲输入,线路连接如图7.2所示。三、编程提示  中断方法的编程流程如图7.3所示  查询方法的编程流程如图7.4所示实验8定时器/计数器实验一、实验目的二、实验内容  掌握8253的基本工作原理和编程方法。定时器应用:按图8.1连接电路,将计数器0、计数器1分别设置为方式3,计数初值设为1000,用逻辑笔观察OUT1输出电平的变化(频率1HZ);计数器应用:按图8.2连接电路,将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。三、编程提示8253控制寄存器地址283H计数器0地址280H计数器1地址281H  定时器应用时的编程流程如图8.3所示,计数器应用时的编程流程如图8.4所示。实验9并行通信实验一、实验目的二、实验内容掌握并行接口芯片8255的工作原理及使用方法方式0的应用:实验电路如图9.1,8255C口接逻辑电平开关K0~K7,A口接LED显示电路L0~L7,编程从8255C口输入数据,再从A口输出;方式1的应用:实验电路如图9.2,要求每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一次中断服务:依次输出01H、02H,04H,08H,10H,20H,40H,80H使L0~L7依次发光,中断8次结束。三、编程提示8255控制端口地址28BHA口的地址 288HC口的地址 28AH  方式0应用时编程流程如图9.3所示,方式1应用时编程流程如图9.4所示。实验107段数码管显示控制实验一、实验目的二、实验内容静态显示:按图10.1连接好电路,将8255的A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1接+5V(选中),S0、dp接地(关闭)。编程从键盘输入一位十进制数字(0~9),在七段数码管上显示出来;动态显示:按图10.2连接好电路,七段数码管段码连接不变,位码驱动输入端S1,S0接8255C口的PC1,PC0,编程在两个数码管上显示“56”。掌握数码管显示数字的原理。实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。静态显示时的编程流程如图10.3所示,动态显示时的编程流程如图10.4所示。三、编程提示实验11抢答器设计实验一、实验目的二、实验内容了解微机化竞赛抢答器的基本原理;进一步学习使用并行接口。图11.1为竞赛抢答器(模拟)的原理图,逻辑开关K0~K7代表竞赛抢答按钮0~7号,当某个逻辑电平开关置“1”时,相当某组抢答按钮按下。在七段数码管上将其组号(0~7)显示出来,并使微机扬声器响一下。三、编程提示设置8255为C口输入、A口输出,读取C口数据,若为0表示无人抢答,若不为0则有人抢答。根据读取数据可判断抢答组号。从键盘上按空格键开始下一轮抢答,按其它键程序退出。实验12交通灯控制实验一、实验目的二、实验内容通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。如图12.1,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律亮灭。三、编程提示  十字路口交通灯的变化规律要求:  (1)南北路口的绿灯、东西路口的红灯同时亮30秒左右;  (2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮;  (3)南北路口的红灯、东西路口的绿灯同时亮30秒左右;  (4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次;  (5)转(1)重复。  编程流程如图12.2所示。实验13串行通信实验一、实验目的二、实验内容了解串行通讯的基本原理;掌握串行接口芯片8251的工作原理和编程方法。按图13.1连接好电路,(8251插通用插座)其中8253计数器用于产生8251的发送和接收时钟.TXD和RXD连在一起;编程:从键盘输入一个字符,将其ASCII码加1后发送出去,再接收回来在屏幕上显示。实现自发自收。三、编程提示图示电路8251的控制口地址为2B9H,数据口地址为2B8H;8253计数器的计数初值=时钟频率/(波特率×波特率因子),这里的时钟频率接1MHz,波特率若选1200,波特率因子若选16,则计数器初值为52H;收发采用查询方式;编程流程如图13.2所示。实验14数/模转换实验一、实验目的二、实验内容了解数/模转换器的基本原理,掌握DAC0832芯片的使用方法。实验电路原理如图14.1所示,DAC0832采用单缓冲方式,具有单双极性输入端(图中的Ua、Ub);编程产生锯齿波(从Ub输出,用示波器观察);编程产生正弦波(从Ub输出,用示波器观察)。三、编程提示8位D/A转换器DAC0832的口地址为290H,输入数据与输出电压的关系为:Ua=-(UREF/256)*NUa=-(UREF/256)*N-5(UREF表示参考电压,N表示数数据),这里的参考电压为PC机的+5V电源。产生锯齿波只须将输出到DAC0832的数据由0循环递增;产生正弦波可根据正弦函数建一个下弦数字量表,取值范围为一个周期,表中数据个数在16个以上。实验15模/数转换实验一、实验目的二、实验内容了解模/数转换的基本原理,掌握ADC0809的使用方法。实验电路原理图如图15.1所示。通过实验台左下角电位器RW1输出0~5V直流电压送入ADC0809通道0(IN0),编程采集IN0输入的电压,在屏幕上显示出转换后的数据(用16进制数)。三、编程提示ADC0809的IN0口地址为298H,IN1口地址为299H;IN0单极性输入电压与转换后数字的关系为:N=Ui/(Uref/256)其中Ui为输入电压,UREF为参考电压,这里的参考电压为PC机的+5V电源。编程流程如图15.2所示实验168255A并行口键盘扫描实验一、实验目的掌握8255A编程原理。了解键盘阵列结构,学会读取按键的方法。二、实验内容本实验的实验电路如图16.1所示。它做在一块扩展电路板上,用一根20芯扁平电缆线将实验板扩展插头J1与实验台上的扩展插头J7相连,为扩展电路连接电源及外部总线。扩展电路板上的数码管、键盘阵列既能由8279控制,也可以由外部电路控制,其实现靠的是若干组短路子组成的控制选择开关K1、K2、K3、K4、KB0、KB1、KB2。当K1、K3、K4连接在8279一端时,数码管由8279控制,连接在LS273一端时由外部总线通过LS273直接控制。当K2、KB1、KB2、KB3连接在8279一端时,键盘阵列由8279控制,连接在8255一端时由外接芯片8255控制。因为本实验为8255控制实验,所以除了连接J1和J7外,还需要将选择开关K2、KB1、KB2、KB3连接在8255一端,并将KA0-KA7,KB0-KB2连接到8255芯片A口,C口,还需要连接8255芯片的片选,以使键盘阵列由8255芯片控制。8255A的端口A地址为:288H,端口C地址为:28AH,控制口地址为:28BH。编程使得在键盘阵列上每按一个键后,微机屏幕上有相应字符显示出来。三、编程提示1.识别键盘上的闭合键,通过采用行扫描法或列翻转法:(1)行扫描法是使键盘上某一列线为低电平,而其余行接高电平,然后读取列值;如果列值中有某位为低电平,则表明行列交点处的键被按下;否则扫描下一行,直到扫完全部的行线为止。(2)行反转法识别闭合键时,要将行线接一个并行口,先让它工作在输出方式,将列线也接到一个并行口,先让它工作在输入方式;程序通过输出端口向全部行线上送低电平,然后读取列线的值;如果此时有某一键被按下,则必定会使某一列线值为零,程序再对两个并行端口进行方式设置,使行线工作在输入方式,列线工作在输出方式,并且将刚才读到的列线值从列线所接的并行端口输出,再读取行线上的值;那么,在闭合键所在的行线上的值必定为零。这样,当一个键被按下时,必定可以读到一对唯一的行值和列值。在我们提供的程序中就采用行反转法来识别键盘按键。2.在程序设计时,将各个键对应的代码(列值,行值)放在一个表中,程序通过查表来确定具体按下的为哪一个键。3.编程流程主程序流程如图16.2所示。键盘扫描子程序流程如图16.3所示。实验17总线控制LED显示实验一、实验目的了解七段数码管(LED)显示数字的原理。掌握只用一个段锁存器和一个位锁存器来同时显示多位数字的技术。二、实验内容实验的实验电路如图17.1所示。它做在一块扩展电路板上,用一根20芯扁平电缆线将实验板扩展插头J1与实验台上的扩展插头J7相连,为扩展电路连接电源及外部总线。扩展电路板上的数码管、键盘阵列既能由8279控制,也可以由外部电路控制,其实现靠的是若干组短路子组成的控制选择开关K1、K2、K3、K4、KB0、KB1、KB2。当K1,K3,K4连接在8279一端时,数码管由8279控制,连接在LS273一端时由外部总线通过LS273直接控制。当K2,KB1,KB2,KB3连接在8279一端时,键盘阵列由8279控制,连接在8255一端时由外接芯片8255控制。因为本实验为外部总线控制实验,所以除了连接J1和J7外,还需要将选择开关K1、K3、K4连接在LS273一端,以使多位数码管(LED)由外部总线控制。选段锁存器(PORTBLT)地址为:2B0H。选位锁存器(PORTREG)地址为:2B1H。编程使得在多位数码管(LED)上显示从000000至999999不断循环自增的数值。三、编程提示主程序流程如图17.2所示。LED显示子程序流程如图17.3所示。实验18微型计算机内部端口操作实验一、实验目的了解微型计算机内部常用端口地址的分配。掌握微型计算机内部,利用8255、8253控制扬声器发声的方法。二、实验内容微型计算机内部,有关扬声器控制电路的硬件连接如图18.1所示。编写一完整程序通过键盘控制扬声器的发音频率。(微机中8253的端口地址为40H~43H,8255的端口地址为60H~63H)。按键与频率的关系如下表所示。按键1234567ESC频率(Hz)3505608201100150018502200退出三、编程提示1.将8253中2#计数器的工作方式设置为方式3(方波)。2.8255的工作方式和工作状态不需要改变,保持微机启动后的设置。3.编程流程如图18.2所示。
/
本文档为【微型计算机原理及应用实验ppt课件】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索