《微机原理与接口技术》实验指导书--王成端周建梁解析.docx
《《微机原理与接口技术》实验指导书--王成端周建梁解析.docx》由会员分享,可在线阅读,更多相关《《微机原理与接口技术》实验指导书--王成端周建梁解析.docx(70页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、微机原理与接口技术实验指导书王成端周建梁编写计算机与通信工程学院2008年6月3 .填充命令F ( Fill ),其格式为:-F range list例如:-F 04BA : 0100 5 F5 XYZ 8D使04BA : 01000104单元包含指定的五个字节的内容。如果list中的字节数超过指 定的范围,那么忽略超过的项;如果list的字节数小于指定的范围,那么重复使用list填入, 直到填满指定的所有单元为止。4 .检查和修改寄存器内容的命令R ( Register ),它有三种格式如下:(1 )显示CPU内所有寄存器内容和标志位状态,其格式为:- R例如:- RAX=0000BX=00
2、00 CX=010ADX=0000SP=FFFEEP=0000SI=0000DI=0000DS=18E4 ES=18E4 SS=18E4 CS=18E4 IP=0100 NV UP DI PL NZ NA PO NC18E4 : 0100 C7 0604023801 MOV WORD PTR 0204 # 0138 DS : 0204=0138其中标志位状态的含义如下:标志名称溢出OF方3DF中断IF符号SF零ZF辅助进位AF奇偶PF进位 CF置位状态OVDNEINGZRACPECY复位状态NVUPDIPLNZNAPONC(2 )显示和修改某个寄存器内容,其格式为:- R register n
3、ame例如,键入-R AX系统将响应如下:AX F1F4即AX寄存器的当前内容为F1F4,如不修改那么按Enter键,否那么,可键入欲修改的内 容,如:- R BXBX 0369:059F那么把BX寄存器的内容修改为059FHo(3 )显示和修改标志位状态,命令格式为:-RF系统将响应,如:OV DN EI NG ZR AC PE CY-此时,如不修改其内容可按Enter键,否那么,可键入欲修改的内容,如:OV DN EI NG ZR AC PE CY- PO NZ DI NV可见键入的顺序可以是任意的,且标志间也可不用空格。5 .运行命令G(G。),其格式为:-G=addressladdre
4、ss2address3.其中,地址1指定了运行的起始地址,如不指定那么从当前的CS : IP开始运行。后面 的地址均为断点地址,当指令执行到断点时,就停止执行并显示当前所有寄存器及标志位 的内容,和下一条将要执行的指令。6 .跟踪命令T ( Trace ),有两种格式:(1)逐条指令跟踪-T=adress从指定地址起执行一条指令后停下来,显示所有寄存器内容及标志位的值。如未指定 地址那么从当前的CS : IP开始执行。(2 )多条指令跟踪-T=address Value 从指定地址起执行n条指令后停下来,n由value指定。7 .程序步跟踪命令P ( Programming step )由于T
5、命令在遇到操作系统或BIOS中断时会跟踪到中断服务程序内部,有时出现死 机现象,因而可用步跟踪命令P ( Programming step )代替T命令,以防止上述现象。P命 令的使用格式为:-P=address Value8 .汇编命令A ( Assemble ),其格式为:-Aladdress该命令允许键入汇编语言语句,并能把它们汇编成机器代码,相继地存放在从指定地 址开始的存储区中。必须注意:DEBUG把键入的数字均看成十六进制数,所以如要键入十进制数,那么其后应加以说 明,如100Do9 .反汇编命令U ( Unassemble ),有两种格式。(1 )从指定地址开始,反汇编32个字节
6、,其格式为:-Uaddress10例如:-UI 0018E4 : 0100C70604023801MOVWORD RTR0204 ,013818E4 : 0106C70606020002MOVWORD PTR0206 , 020018E4 : 010CC70608020202MOVWORD PIR0208 z 020218E4 : 0112BB0402MOVBX , 020418E4 : 0115E80200CALL 011A18E4 : 0118 CD20INT 20节。(2 )对指定范围内的存储单元进行反汇编,格式为:-Urange例如:-U100 10C18E4 : 010018E4 :
7、 010618E4 : 010C或-U100 11218E4 : 0100C70604023801C70606020002C70608020202C70604023801MOV WORD PTR 0204 ,0138MOV WORD PTR 0206 z 0200MOV WORD PTR 0208 z 0202MOV WORD PTR0204 f 013811如果地址被省略,那么从上一个U命令的最后一条指令的下一个单元开始显示32个字18E4 : 0106 C70606020002MOV WORD PTRI0206 f 020018E4 : 010C C70608020202 MOV WORD
8、 PTR0208 , 020210 .输入命令I ( Input ) o其格式为:-I port address ( port address 为端口号)其功能是从指定的端口输入一个字节并显示出来。例如:4 2F8FF它表示从02F8H端口读出的内容值为0FFH。11 .输出命令O ( Output 1其格式为:-0 port address byte ( port address 为端口号)其功能是向指定的端口输出一个字节。例如:-0 2F9 B7它表示将字节值OB7H输出到端口 2F9H中。12.退出DEBUG命令Q ( Quit ),其格式为:-Q退出DEBUG ,返回操作系统。12实验
9、三循环与分支程序设计实验实验1 .熟悉8086/8088常用指令;2 .熟悉使用汇编语言进行分支与循环程序设计的方法;3 .熟悉DEBUG常用命令。二、实验内容1 .编程为符号函数x0x=0x0 当当当赋值;2 .编程求前20个自然数的和,并放到内存中DS : 0300H开始的地方。三、实验要求1 .编程并上机调试运行,使用DEBUG查看结果;2 .写出实验报告。参考程序一:DATA SEGMENT13XDB -5YDB ?DATA ENDSCODE SEGMENTASSUME CS: CODE, DS: DATASTART:MOVAX, DATAMOVDS, AXMOVAL, XCMPAL,
10、0JGEBIGRMOVAL, OFFHMOVY,ALJMPNEXTBIGR:JE EQULMOVAL, 1MOVY,ALJMPNEXTEQUL:MOVAL,0MOVY,ALNEXT:MOVAH, 4CHINT21HCODEENDSEND START参考程序二:DATA SEGMENTARRAY DB 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20COUNT EQU $-ARRAYORG 0300HSUM DW ?14DATA ENDSSTACK SEGMENT PARA STACK STACKSTAK DB 10 DUP (?)TOP EQ
11、U LENGTH STAKSTACK ENDSCODE SEGMENTASSUME CS: CODE, DS: DATA, SS: STACKSTART: MOVMOVMOVMOVMOVMOVLOP:ADDADCINCSTART: MOVMOVMOVMOVMOVMOVLOP:ADDADCINCAX, DATADS, AXAX,0DI, OFFSET SUMBX, OFFSET ARRAYCX, COUNTAL, BXAH,0BXLOOP LOPMOV DI,AXMOV AH, 4CHINT 21HCODE ENDSEND START15实验四DOS系统功能调用(字符输入与输出)实验1 .熟悉D
12、OS系统功能调用(字符输入与输出)的功能及使用场合。2 .掌握DOS系统功能调用的编程方法。实验内容1 .编写一程序,要求当程序运行时先在屏幕上显示如下的信息:please enter any key when ready!”,然后在键盘上按下任意一个键,程序能将该键对应的ASCII码以8位二进 制数的形式在屏幕上显示出来。三、实验要求2 .使用MASM汇编程序、使用LINK连接程序,最后生成DOS下的可执行文件, 并调试运行通过。3 .实验前熟悉汇编语言软件的开发步骤。参考程序:DATA SEGMENTMESS DB PLEASE ENTER ANY KEY WHEN READY!;0DH,
13、0AH,$DATA ENDSSTACK SEGMENT STACKDB 200 DUP(O)16STACK ENDSCODE SEGMENTASSUME CS: CODE, SS: STACK, DS: DATABEGIN: MOV AX, DATAMOV DS, AXMOV AH, 09HMOV DX, OFFSET MESSINT 21HMOV AH,01HINT 21HMOV DL, OAHCALL DISPMOV DL, ODHCALL DISPMOV CX, 8CLCLI:SHL AL, 1RCL DL, 1AND DL,01HOR DL, 30HCALL DISPLOOP LIMO
14、V AH, 4CHINT 21HDISPDISPPROCNEARPUSHCXPUSH AXMOV AH, 02HINT 21HPOP AX17实验一汇编语言程序的建立和执行1实验二DEBUG调试程序实验6实验三循环与分支程序设计实验13实验四DOS系统功能调用(字符输入与输出)16实验五存储器读写19实验六 中断控制器8259A应用21实验七 并行口 8255A应用29实验八继电器控制实验35实验九 定时/计数器8253A应用38实验十D/A转换0832应用41实验H- A/D转换0809应用45实验十二步进电机控制实验51实验十三 串行通信实验5513579。POP exRETDISP EN
15、DPCODE ENDSEND BEGIN执彳了完本程序,屏幕将显示:please enter any key when ready!300110011A0100000118实验五存储器读写实验1 .熟悉静态RAM的使用方法,掌握8088微机系统扩展RAM的方法。2 .熟悉静态RAM读写数据编程方法。二,实验内容对指定地址区间的RAM(2000H23FFH)先进行写数据55AAH ,然后将其内容读出再写到3000H33FFH中。三.实验步骤运行实验程序(1 )联机时,实验程序文件名为DVCCH8EXEH812S.EXE。(2 )单机时,实验程序起始地址为F000 : 9700o在系统显示监控提示
16、符“P.”时:输入F000按F1键输入9700按EXEC键稍后按RESET键退出,用存储器读写方法检查2000H-3000H中的内容应都是55AA。参考程序:19CODE SEGMENTASSUME CS: CODEORG 1700hSTART:MOV AX , OHMOV DS , AXMOV BX , 2000HMOV AX , 55AAHMOV CX , 03FFHRAMW1:MOV DS:|BX , AXADD BX , 0002HLOOP RAMW1MOV AX , 2000HMOV SI z AXMOV AX , 3000HMOV DI , AXMOV CX , 03FFHCLDR
17、EP MOVSBJMP $CODE ENDSEND START20实验六中断控制器8259A应用实验1 .掌握中断控制器8259A与微机接口的原理和方法。2 .掌握中断控制器8259A的应用编程。二,实验内容本系统中已设计有一片8259A中断控制芯片,工作于主片方式,8个中断请求输入端IR0-IR7对应的中断型号为8F ,其和中断矢量关系如下表6-1所示。表6-18259A中断类型号中断矢量表地址IR0820H 23HIR1924H27HIR2A28H 2BHIR3B2cH 2FHIR4C30H 33HIR5D34H 37HIR6E38H 3BHIR7F3cH 3FH根据实验原理图6-1 ,
18、8259A和8088系统总线直接相连,8259A上连有一系统地址线A0 ,故8259A有2个端口地址,本系统中为60H、61HO 60H用来写ICW1 , 61H用来 写ICW2、ICW3、ICW4 ,初始化命令字写好后,再写操作命令字。OCW2、OCW3用口21 地址60H , 0CW1用口地址61H。图6-1中,使用了 3号中断源,IR3插孔和SP插孔相连, 中断方式为边沿触发方式,每按一次AN按钮产生一次中断信号,向8259A发出中断请求 信号。如果中断源电平信号不符规定要求那么自动转到7号中断,显示“Err。CPU响应中断 后,在中断服务中,对中断次数进行计数并显示,计满5次结束,显示
19、器显示“Good”。三、实验连线(1 ) 8259模块上的INT连8088的INTR (在主板键盘矩阵下面(2 ) 8259模块上的INTA连8088的INTA (在主板键盘矩阵下面(3 ) MP区SP插孔和8259的3号中断IR3插孔相连,SP端初始为低电平。(4 ) 8259模块上的D0D7连至IBUS 2区的XD0XD7。(5 ) 8259模块上的CS端接Y6O(6 ) 8259模块上的A0连至! BUS区的XA0上。(7 ) 8259模块上的RD、WR信号线分别连到BUS 3区的XRD、XWR上。22实验原理XDOXD7INTR INTAY6 XRP XWR XAO9LGND图6/五.
20、实验步骤1 .按图6-1连好实验线路2 .运行实验程序(1 )联机时,实验程序文件名为DVCCH8EXEH86S.EXE。(2 )单机时,实验程序起始地址为F000 : 91A0o在系统显示监控提示符“P.”时:输入F000按F1键输入91Ao按EXEC键在系统上显示“8259-123 .按AN按钮,按满5次显示“GOOD二23参考程序:CODE SEGMENTASSUME CS: CODEINTPORT1 EQU 0060HINTPORT2 EQU 0061HINTQ3 EQU INTREEUP3INTQ7 EQU INTREEUP7ORG 11AOH程序装入内存偏移地址为IIA0地址处。清
21、楚DF,START:CLDCALL WBUF1CALL WBUF1;调用子程序WBUF1。将显示8259-1的数据写入内存。CALL WRINTVER;装入中断矢量表。MOV AL,13HMOV DXJNTPORT1OUT DX,AL;将初始化命令字ICW1写入0060H地址,使得8259工作在边沿触发,单片8259,需要ICW4 ( 8086模式MOV AL,08HMOV DXJNTPORT2OUT DX,AL;写初始化命令字ICW2到0061 Ho中断矢量从08H开始。MOV AL,09HOUT DX,AL;写初始化命令字ICW4到0061H地址。工作在一般嵌套方式,缓冲方式,非自动EOI
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机原理与接口技术 微机 原理 接口 技术 实验 指导书 王成端周建梁 解析
限制150内