《微型计算机原理与接口技术实验指导2.doc》由会员分享,可在线阅读,更多相关《微型计算机原理与接口技术实验指导2.doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流微型计算机原理与接口技术实验指导2.精品文档.实验一 DEBUG的启动及其基本命令的使用一、实验学时1学时。二、实验目的 掌握DEBUG 的基本命令及其功能。三、实验设备计算机。四、实验内容DEBUG是专门为汇编语言设计的一种调试工具,它通过步进,设置断点等方式为汇编语言程序员提供了非常有效的调试手段。1、DEBUG程序的启动在DOS提示符下,可键入命令:CDEBUGd:path文件名 参数1参数2其中文件名是被调试文件的名称,它须是执行文件(EXE),两个参数是运行被调试文件时所需要的命令参数,在DEBUG程序调入后,出现提示符“-”,此时
2、,可键入所需的DEBUG命令。在启动DEBUG时,如果输入了文件名,则DEBUG程序把指定文件装入内存。用户可以通过DEBUG的命令对指定文件进行修改、显示和执行。如果没有文件名,则是以当前内存的内容工作,或者用命名命令和装入命令把需要的文件装入内存,然后再用DEBUG的命令进行修改、显示和执行。2、DEBUG的主要命令(1)汇编命令A,格式为:-A地址该命令从指定地址开始允许输入汇编语句,把它们汇编成机器代码相继存放在从指定地址开始的存储器中。(2)反汇编命令U,有两种格式:1)-U地址该命令从指定地址开始,反汇编32个字节,若地址省略,则从上一个U命令的最后一条指令的下一个单元开始显示32
3、个字节。2)-U范围该命令对指定范围的内存单元进行反汇编,例如:-U 04BA:0100 0108或 U 04BA:0100 L9此二命令是等效的。(3)运行命令G,格式为:-G =地址1地址2地址3。其中地址1规定了运行起始地址,后面的若干地址均为断点地址。(4)追踪命令T,有两种格式:1)逐条指令追踪:-T=地址该命令从指定地址起执行一条指令后停下来,显示寄存器内容和状态值。2)多条指令追踪:-T=地址值该命令从指定地址起执行n条命令后停下来,n由值确定。(5)显示内存单元内容的命令D,格式为:-D地址或-D范围(6)修改内存单元内容的命令E,它有两种格式:1)用给定的内容代替指定范围的单
4、元内容:-E地址 内容表 例如:-E 2000:0100 F3 “XYZ” 8D其中F3,“X”“Y”“Z”和8D各占一个字节,用这五个字节代替原内存单元2000:0100到0104的内容,“X”“Y”“Z”将分别按它们的ASCII码值代入。2)逐个单元相继地修改:-E地址例如:-E 100:18E4:0100 89.78此命令是将原100号单元的内容89改为78。78是程序员键入的。(7)检查和修改寄存器内容的命令R,它有三种方式:1)显示CPU内部所有寄存器内容和标志位状态;格式为:-RR命令显示中标志位状态的含义如下表所示:标 志 名置 位复 位溢出Overflow(是/否)OVNV方向
5、Direction(减量/增量)DNUP中断Interrupt(允许/屏蔽)EIDI符号Sign(负/正)NGPL零Zero(是/否)ZRNZ辅助进位Auxiliary Carry(是/否)ACNA奇偶Parity(偶/奇)PEPO进位Carry(是/否)CYNC2)显示和修改某个指定寄存器内容,格式为:-R 寄存器名例如打入:-R AX系统将响应如下:AX FIF4表示AX当前内容为F1F4,此时若不对其作修改,可按ENTER键,否则,打入修改后内容,如:-R BXBX 0369:059F则BX内容由0369改为059F3)显示和修改标志位状态,命令格式为:-RF系统将给出响应,如OV DN
6、 EI NG ZR AC PE CY-这时若不作修改可按ENTER键,否则在“-”号之后键入修改值,键入顺序任意。如OV DN EI NG ZR AC PE CY-PONZDINV(8)命名命令N,格式为:-N 文件名此命令将文件名格式化在CS:5CH的文件控制块内,以便使用L或W命令把文件装入内存进行调试或者存盘。(9)装入命令L,它有两种功能:1)把磁盘上指定扇区的内容装入到内存指定地址起始的单元中,格式为:-L 地址 驱动器 扇区号 扇区数2)装入指定文件,格式为:-L 地址此命令装入已在CS:5CH中格式化的文件控制块所指定的文件。在用L命令前,BX和CX中应包含所读文件的字节数。(1
7、0)写命令W,有两种格式:1)把数据写入磁盘的指定扇区:-W 地址 驱动器 扇区号 扇区数2)把数据写入指定文件中:-W 地址此命令把指定内存区域中的数据写入由CS:5CH处的FCB所规定的文件中。在用W命令前,BX和CX中应包含要写入文件的字节数。(11)退出DEBUG命令Q,该命令格式为Q它退出DEBUG程序,返回DOS,但该命令本身并不把在内存中的文件存盘,如需存盘,应在执行Q命令前先执行写命令W。五、实验要求:用汇编语言编写一个计算“3+5”的加法程序六、实验报告:1.实验目的 掌握DEBUG 的基本命令及其功能。2.程序清单3.试验中出现的问题及解决方法4.写出在DEBUG状态下编写
8、、运行程序的过程以及调试所中遇到的问题是如何解决的,并对调试过程中的问题进行分析,对执行结果进行分析。实验二 存储器(RAM 6264)扩展一、实验学时2学时。二、实验目的1熟悉随机存储器RAM 6264的使用方法及计算机扩展存储器的方法。2了解PC机62芯总线信号的定义及其选用方法。3掌握对外部存储器进行读、写的编程方法。4学习用软件编辑、汇编、连接和调试源程序。三、实验设备计算机;微机原理实验系统;RAM6264芯片。四、实验内容1设计扩展一片数据存储器6264芯片实验系统的外部存储器。2设计一段程序,将一组数据(00H,01H,02H,0FEH,0FFH)传送到扩展的外部数据存储器626
9、4中去。五、实验原理6264是8K8位的静态随机读写存储器。微处理器通过数据总线、地址总线和控制总线与存储器连接。6264有13条地址线A0A12。其片选信号由译码电路产生。计算机通过总线信号MEMR、MEMW对6264进行读写处理。六编程提示1通过实验接线图,确定扩展的6264在实验系统中的地址范围。2扩展的6264的段地址送入段寄存器DS,偏移地址送入BX。七实验步骤1按实验要求连接硬件线路;2编辑按实验要求设计的汇编语言源程序;3汇编、连接汇编语言源程序生成可执行文件;4装载可执行文件,调试、运行程序并检验、记录结果;八预习要求1复习有关存储器及其扩展的内容;2复习PC机62芯总线信号的
10、内容;3按照实验要求事先设计好有关硬件线路;4按照实验要求事先设计、编写好汇编语言源程序。九实验报告1画出硬件原理图,分析各部分的功能。2写出程序清单并进行注释。3画出程序流程框图。4分析调试、运行结果。5RAM 6264的存储空间有多大?寻址范围是多少?实验三 8259A中断控制器实验一、实验学时:2学时。二、实验目的:1. 了解8259A中断控制器的工作原理。2. 了解PC机中断的原理和过程。3. 学会中断处理程序的编写。三、实验设备:EAT598三合一实验箱,或其他微机原理与接口技术类试验箱(台);计算机;各种连接线。四、实验内容1实验电路2. 实验连线+PLUSE接8259的INT_0
11、;8259上的INT接EAT598_88CPU板上的INTR; 8259上的INTA59接EAT598_88CPU板上的88/INTA ;CS8259接200H。3. 实验方法(1)运行LCA88软件后,先加载主程序。打开示例程序8259A_88.ASM,在“设置”-“仿真机”中设置加载地址为8100:0,“编译”-“编译连接”。再打开中断服务程序IRQ0_88.ASM,加载地址设为8200:0,编译连接。(2)“窗口”-“对话窗口”,键入“SW 0:0020”,“0000,8200”,“G8100:0”,“Y”。此时数码管显示“IRQ”,说明中断设置准备完毕,可以开始进入中断(3)按下21模
12、块的白色按键,进入中断,数码管显示“IRQ0”,中断服务程序执行完毕后,数码管显示“E_IRQ”。4.实验程序框图五、实验报告1.实验目的1. 了解8259A中断控制器的工作原理。2. 了解PC机中断的原理和过程。3. 学会中断处理程序的编写。2.程序清单Int.asm ;* 中断 *; data segment int_vect EQU 071H ;中断0-7的向量为:08h-0fh,中断8-15的向量为:70h-77h irq_mask_2_7 equ 011111011b ;中断掩码,中断0-7时从低至高相应位为零,中断8-15时第2位为零 irq_mask_9_15 equ 01111
13、1101b ;中断0-7时全一,中断8-15时从低至高相应位为零 ioport_cent equ 0d800h ;tpc 卡中9054芯片的io地址 csreg dw ? ipreg dw ? ;旧中断向量保存空间 irq_times dw 00h ;中断计数 msg1 db 0dh,0ah,TPC pci card Interrupt,0dh,0ah,$ msg2 db 0dh,0ah,Press any key to exit!,0dh,0ah,$ msg3 db 0dh,0ah,Press DMC to interrupt 10 times and exit!,0dh,0ah,$ dat
14、a ends stacks segment db 100 dup (?) stacks ends code segment assume cs:code,ds:data,ss:stacks,es:datastart: ;Enable Local Interrupt Input .386 cli mov ax,data mov ds,ax mov es,ax mov ax,stacks mov ss,ax mov dx,ioport_cent+68h ;设置 tpc 卡中9054芯片io口,使能中断 in ax,dx or ax,0900h out dx,ax mov al,int_vect ;
15、保存原中断向量 mov ah,35h int 21h mov ax,es mov csreg,ax mov ipreg,bx mov ax,cs ;设置新中断向量 mov ds,ax mov dx,offset int_proc mov al,int_vect mov ah,25h int 21h in al, 21h ;设置 中断掩码 and al, irq_mask_2_7 out 21h, al in al, 0a1h and al, irq_mask_9_15 out 0a1h, al mov ax,data mov ds,ax mov dx,offset msg2 mov ah,09
16、h int 21h mov dx,offset msg3 mov ah,09h int 21h mov irq_times,0ah sti loop1: cmp irq_times,0 ;等待中断并判断中断10次后退出 jz exit mov ah,1 int 16h jnz exit ;按任意键退出 jmp loop1 exit: cli mov bl, irq_mask_2_7 ;恢复中断掩码 not bl in al, 21h or al, bl out 21h, al mov bl, irq_mask_9_15 not bl in al, 0a1h or al, bl out 0a1h
17、, al mov dx,ipreg ;恢复原中断向量 mov ax,csreg mov ds,ax mov ah,25h mov al,int_vect int 21h mov dx,ioport_cent+68h ;设置 tpc 卡中9054芯片io口,关闭中断 in ax,dx and ax,0f7ffh out dx,ax mov ax,4c00h int 21h int_proc proc far cli push ax push dx push ds dec irq_times mov ax,data ;Interrupt to do mov ds,ax mov dx,offset msg1 mov ah,09h int 21h mov al,20h ;Send EOI out 0a0h,al out 20h,al pop ds pop dx pop ax sti iret int_proc endp code ends end start3.试验中出现的问题及解决方法4.画出实验模块电路并标出实验连线。5.试叙述基于8086/8088的微机系统处理硬件中断的过程。高等教育自学考试实验报告评分栏完成实验数量:_实 验 单 位 :_(公章)实 验 日 期 :_指 导 教 师 :_指导教师初评成绩:_主考院校审定成绩:_审定成绩时间:_
限制150内