微机原理与接口技术实验指导书.docx

上传人:b****7 文档编号:9830301 上传时间:2023-02-06 格式:DOCX 页数:22 大小:19.85KB
下载 相关 举报
微机原理与接口技术实验指导书.docx_第1页
第1页 / 共22页
微机原理与接口技术实验指导书.docx_第2页
第2页 / 共22页
微机原理与接口技术实验指导书.docx_第3页
第3页 / 共22页
微机原理与接口技术实验指导书.docx_第4页
第4页 / 共22页
微机原理与接口技术实验指导书.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

微机原理与接口技术实验指导书.docx

《微机原理与接口技术实验指导书.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术实验指导书.docx(22页珍藏版)》请在冰豆网上搜索。

微机原理与接口技术实验指导书.docx

微机原理与接口技术实验指导书

 

《微机原理与接口技术》

实验指导书

 

主编教师:

授课班级:

 

目录

实验一顺序结构程序实验4

【实验目的】4

【实验重点及难点】4

【实验环境】4

【实验内容】4

实验二分支结构程序实验6

【实验目的】6

【实验重点及难点】6

【实验环境】6

【实验内容】6

实验三单重循环结构程序实验8

【实验目的】8

【实验重点及难点】8

【实验环境】8

【实验内容】8

实验四多重循环结构程序实验10

【实验目的】10

【实验重点及难点】10

【实验环境】10

【实验内容】10

实验五子程序实验

(一)12

【实验目的】12

【实验重点及难点】12

【实验环境】12

【实验内容】12

实验六子程序实验

(二)14

【实验目的】14

【实验重点及难点】14

【实验环境】14

【实验内容】14

实验七字符处理程序实验

(一)17

【实验目的】17

【实验重点及难点】17

【实验环境】17

【实验内容】17

实验八字符处理程序实验

(二)19

【实验目的】19

【实验重点及难点】19

【实验环境】19

【实验内容】19

实验一顺序结构程序实验

【实验目的】

1、熟悉MasmforWindows集成实验环境软件。

2、熟悉DEBUG有关命令的使用方法。

3、通过实际操作,掌握顺序结构程序的设计方法。

4、通过实际操作,熟悉利用DEBUG修改参数、检查结果的方法。

5、通过实际操作,熟悉汇编语言源程序的编辑、汇编、连接及调试过程。

【实验重点及难点】

1、DEBUG有关命令的使用方法。

2、顺序结构程序的设计方式。

3、利用MasmforWindows集成实验环境软件运行简单的程序段。

【实验环境】

Windowxp操作系统,MasmforWindows集成实验环境。

【实验内容】

(一)、实验步骤

1、打开MasmforWindows集成实验环境软件。

2、新建一个ASM文件,编写一个求平均值程序,假设两个数分别存在X单元和Y单元中,求得的平均值存放在Z单元中。

3、保存后对其进行汇编及连接,产生.EXE文件。

4、用DEBUG对.EXE文件进行调试运行。

5、学会DEBUG中的D命令、E命令、R命令、T命令、A命令、G命令等的使用。

6、运行完毕,关闭MasmforWindows集成实验环境软件。

(二)、参考程序清单

DATASEGMENT

XDB80H

YDB16H

ZDB?

DATAENDS

STACK1SEGMENT

DW20HDUP(0)

STACK1ENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA,SS:

STACK1

START:

MOVAX,DATA

MOVDS,AX

MOVAL,X

ADDAL,Y

MOVAH,00H

MOVBL,02H

DIVBL

MOVZ,AL

CODEENDS

ENDSTART

实验二分支结构程序实验

【实验目的】

1、通过实际操作,掌握分支程序的设计方法。

2、通过实际操作,掌握利用DEBUG修改参数、检查结果的方法。

3、通过实际操作,掌握汇编语言源程序的编辑、汇编、连接及调试过程。

【实验重点及难点】

1、分支程序的设计方法。

2、汇编语言的指令语句和伪指令语句的格式。

3、修改程序参数,检查结果的操作方法。

【实验环境】

Windowxp操作系统,MasmforWindows集成实验环境。

【实验内容】

(一)、实验步骤

1、打开MasmforWindows集成实验环境软件。

2、新建一个ASM文件,编写一个分支结构程序,假设存储器中有一字符串首址为BUFFER,字符串长度N(小于256),要求分别计算出其中数字‘0’~‘9’、字母‘A’~‘Z’和其他字符的个数,并分别将它们存放到字符串下面的三个单元中。

3、保存后对其进行汇编及连接,产生.EXE文件。

4、用DEBUG对.EXE文件进行调试运行。

5、运行完毕,关闭MasmforWindows集成实验环境软件。

(二)、参考程序清单

DATASEGMENT

BUFFERDB10

DB01H,35H,38H,47H,52H,59H,60H,63H,70H,76H

NUMDB3DUP(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVCX,10

MOVDX,0

MOVSI,OFFSETBUFFER

LP:

LODSB

CMPAL,30H

JLNEXT

CMPAL,39H

JGABC

INCDH

JMPNEXT

ABC:

CMPAL,41H

JLNEXT

CMPAL,5AH

JGNEXT

INCDL

NEXT:

LOOPLP

MOV[SI],DH

MOV[SI+1],DL

MOVAL,10

SUBAL,DH

SUBAL,DL

MOV[SI+2],AL

CODEENDS

ENDSTART

 

实验三单重循环结构程序实验

【实验目的】

1、通过实际操作,掌握单重循环结构程序的设计方法。

2、通过实际操作,掌握循环结构程序的组成。

3、通过实际操作,进一步熟悉利用DEBUG程序修改参数的方法,并检查和验证结果的正确性。

【实验重点及难点】

1、用计数器控制循环的方法。

2、用条件控制循环的方法。

3、用逻辑尺控制循环的方法。

【实验环境】

Windowxp操作系统,MasmforWindows集成实验环境。

【实验内容】

(一)、实验步骤

1、打开MasmforWindows集成实验环境软件。

2、新建一个ASM文件,编写一个单重循环结构程序,求自然数之和,直到累加和大于1000为止,统计被加的自然数的个数,并把统计的个数送入COUNT单元,累加和送TOTAL单元。

3、保存后对其进行汇编及连接,产生.EXE文件。

4、用DEBUG对.EXE文件进行调试运行。

5、运行完毕,关闭MasmforWindows集成实验环境软件。

(二)、参考程序清单

DATASEGMENT

COUNTDW?

TOTALDW?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVCX,0

MOVAX,0

MOVBX,0

LOOP1:

INCBX

ADDAX,BX

INCCX

CMPAX,1000

JLELOOP1

SUBCX,1

MOVCOUNT,CX

MOVTOTAL,AX

CODEENDS

ENDSTART

实验四多重循环结构程序实验

【实验目的】

1、通过实际操作,掌握多重循环结构程序的设计方法。

2、通过实际操作,掌握循环嵌套的特点。

3、通过实际操作,学会针对不同的问题,选用不同的组织循环的方法。

【实验重点及难点】

1、循环嵌套的特点,内外循环的跳转。

2、如何避免死循环的产生。

3、LOOP语句构成的循环结构特点。

【实验环境】

Windowxp操作系统,MasmforWindows集成实验环境。

【实验内容】

(一)、实验步骤

1、打开MasmforWindows集成实验环境软件。

2、新建一个ASM文件,编写一个多重循环结构程序,编制一个程序把存储器中一组字数据按照从小到大的次序排列。

3、保存后对其进行汇编及连接,产生.EXE文件。

4、用DEBUG对.EXE文件进行调试运行。

5、运行完毕,关闭MasmforWindows集成实验环境软件。

(二)、参考程序清单

DATASEGMENT

BUFFERDW7,37,8600,0A78H,3412H,1257H,76H

DATAENDS

STACK1SEGMENT

SADB100DUP(?

TOPLABELWORD

STACK1ENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVAX,STACK1

MOVSS,AX

MOVSP,OFFSETTOP

MOVBX,0

MOVCX,BUFFER[BX]

DECCX

L1:

MOVDX,CX

L2:

ADDBX,2

MOVAX,BUFFER[BX]

CMPAX,BUFFER[BX+2]

JBECOUNTI

XCHGAX,BUFFER[BX+2]

MOVBUFFER[BX],AX

COUNTI:

LOOPL2

MOVCX,DX

MOVBX,0

LOOPL1

STOP:

HLT

CODEENDS

ENDSTART

 

实验五子程序实验

(一)

【实验目的】

1、通过实际操作,掌握主程序与子程序之间的调用关系及调用方法。

2、通过实际操作,掌握子程序调用过程中近程调用与嵌套调用。

3、通过实际操作,掌握通过堆栈转送参数的方法。

【实验重点及难点】

1、子程序嵌套方法的使用。

2、用堆栈传送参数的过程及其具体方法。

3、子程序设计的基本方法。

【实验环境】

Windowxp操作系统,MasmforWindows集成实验环境。

【实验内容】

(一)、实验步骤

1、打开MasmforWindows集成实验环境软件。

2、新建一个ASM文件,编写一个子程序的近程调用程序,将BUF开始的10个单元中的二进制数转换成两位十六进制数的ASCII码,在屏幕上显示出来。

要求码型转换通过子程序HEXAC实现,在转换过程中,通过子程序DISP实现显示。

3、保存后对其进行汇编及连接,产生.EXE文件。

4、用DEBUG对.EXE文件进行调试运行。

5、运行完毕,关闭MasmforWindows集成实验环境软件。

(二)、参考程序清单

DATASEGMENT

BUFDB0ABH,0CDH,0DEH,01H,02H,03H,3AH,4BH,5CH,6FH

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVCX,10

LEABX,BUF

AGAIN:

MOVAL,[BX]

CALLHEXASC

INCBX

LOOPAGAIN

MOVAH,4CH

INT21H

HEXASCPROCNEAR

MOVDL,AL

PUSHCX

MOVCL,4

SHRDL,CL

POPCX

CALLDISP;显示高位HEX数

MOVDL,AL

ANDDL,0FH

CALLDISP

RET

HEXASCENDP

DISPPROCNEAR

CMPDL,9

JBENEXT

ADDDL,7

NEXT:

ADDDL,30H

MOVAH,2

INT21H;显示

RET

DISPENDP

CODEENDS

ENDSTART

实验六子程序实验

(二)

【实验目的】

1、通过实际操作,进一步掌握主程序与子程序之间的调用关系及调用方法。

2、通过实际操作,掌握子程序调用过程中近程调用与远程调用的区别。

3、通过实际操作,进一步掌握通过堆栈转送参数的方法。

【实验重点及难点】

1、远程调用与近程调用的区别,在用DEBUG有关命令观察时,执行过程有何不同。

2、用堆栈传送参数的过程及其具体方法。

3、子程序嵌套方法的使用。

【实验环境】

Windowxp操作系统,MasmforWindows集成实验环境。

【实验内容】

(一)、实验步骤

1、打开MasmforWindows集成实验环境软件。

2、新建一个ASM文件,编写一个子程序的远程调用程序。

主程序要求从键盘接收若干个字符,然后用远调用的方法,调用子程序统计字符串中字符‘b’的个数;子程序的参数是字符串的首地址TABLE,字符串长度N及字符‘b’,子程序返回字符‘b’的个数,参数传送采用堆栈实现,主程序在子程序返回后,显示字符‘b’及其个数(设为一位十六进制数。

3、保存后对其进行汇编及连接,产生.EXE文件。

4、用DEBUG对.EXE文件进行调试运行。

5、运行完毕,关闭MasmforWindows集成实验环境软件。

(二)、参考程序清单

DATASEGMENT

CHARDB'b'

BUFDB50H,?

50HDUP(?

CRLFDB0DH,0AH,'$'

DATAENDS

MCODESEGMENT

ASSUMECS:

MCODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

LEADX,BUF

MOVAH,0AH

INT21H

LEADX,CRLF

MOVAH,9

INT21H

LEASI,BUF

MOVCL,[SI+1]

MOVCH,0;CX中为字符串长度

INCSI

INCSI;SI指向串首址TABLE

MOVAL,CHAR

MOVAH,0;AX中为待查字符

PUSHSI

PUSHCX

PUSHAX;参数送堆栈

CALLCHECK

POPAX;统计个数在AL中

MOVDL,CHAR

MOVAH,2

INT21H

POPAX

MOVDL,AL

ANDDL,0FH

CMPDL,9

JBENEXT

ADDDL,7

NEXT:

ADDDL,30H

MOVAH,2

INT21H;显示统计个数

MOVAH,4CH

INT21H

MCODEENDS

SCODESEGMENT

ASSUMECS:

SCODE

CHECKPROCFAR

PUSHBP

MOVBP,SP

MOVSI,[BP+10]

MOVCX,[BP+8]

MOVAX,[BP+6]

XORAH,AH

AGAIN:

CMPAL,[SI]

JNENEXT1

INCAH

NEXT1:

INCSI

LOOPAGAIN

MOVAL,AH

MOV[BP+10],AX

POPBP

RET4

CHECKENDP

SCODEENDS

ENDSTART

实验七字符处理程序实验

(一)

【实验目的】

1、通过实际操作,熟悉串操作指令的功能与应用。

2、通过实际操作,掌握串操作指令的寻址方式及使用方法。

3、通过实际操作,熟悉字符处理的方法和字符处理程序的设计。

【实验重点及难点】

1、字符处理的方法和字符处理程序的设计的方法。

2、串操作的指令及其寻址方式的特点,串操作指令的使用。

【实验环境】

Windowxp操作系统,MasmforWindows集成实验环境。

【实验内容】

(一)、实验步骤

1、打开MasmforWindows集成实验环境软件。

2、新建一个ASM文件,编写一个字符串统计程序。

自STRN开始的存储区中,有一个字符串,统计其中含有小写字母的个数,将统计结果以两位十进制数显示在屏幕上。

3、保存后对其进行汇编及连接,产生.EXE文件。

4、用DEBUG对.EXE文件进行调试运行。

5、运行完毕,关闭MasmforWindows集成实验环境软件

(二)、参考程序清单

DATASEGMENT

STRNDB80DUP(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

LEADI,STRN

MOVCL,0

AGAIN:

MOVAH,1

INT21H

CMPAL,0DH

JZDONE

MOV[DI],AL

INCDI

INCCL

JMPAGAIN

DONE:

LEASI,STRN

MOVCH,0

MOVBL,0

CLD

CYCLE:

LODSB

CMPAL,61H

JBNEXT

CMPAL,7AH

JANEXT

INCBL

NEXT:

LOOPCYCLE

MOVAL,BL

MOVAH,0

MOVCL,10

DIVCL;十位数在AL中,个位数在AH中

PUSHAX;回车换行

MOVDL,0DH

MOVAH,2

INT21H

MOVDL,0AH

MOVAH,2

INT21H

POPAX

XCHGAH,AL;以下显示两位十进制数

MOVBX,AX

MOVDL,BH

ADDDL,30H

MOVAH,2

INT21H

MOVDL,BL

ADDDL,30H

INT21H

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

实验八字符处理程序实验

(二)

【实验目的】

1、通过实际操作,进一步熟悉串操作指令的功能与应用。

2、通过实际操作,进一步掌握串操作指令的寻址方式及使用方法,编写常用的字符串处理程序。

3、通过实际操作,掌握字符处理的方法和字符处理程序的设计。

【实验重点及难点】

1、字符处理的方法和字符处理程序的设计的方法。

2、串操作的指令及其寻址方式的特点,串操作指令的使用。

3、总结字符串处理的编程方法,提出改进和完善此类程序的设计方案。

【实验环境】

Windowxp操作系统,MasmforWindows集成实验环境。

【实验内容】

(一)、实验步骤

1、打开MasmforWindows集成实验环境软件。

2、新建一个ASM文件,编写一个字符串程序。

在给定的字符串中,删除重复的字符,其余的字符向前递补。

3、保存后对其进行汇编及连接,产生.EXE文件。

4、用DEBUG对.EXE文件进行调试运行。

5、运行完毕,关闭MasmforWindows集成实验环境软件

(二)、参考程序清单

DATASEGMENT

STRNDB80,?

80DUP(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

LEADX,STRN

MOVAH,0AH;0A号调用,从键盘输入字符串。

INT21H

PUSHAX

MOVDL,0AH

MOVAH,2

INT21H

MOVDL,0DH;回车换行

MOVAH,2

INT21H

POPAX

LEABX,STRN+2

LEASI,STRN+3

LEADI,STRN+3

MOVCH,0

MOVCL,BYTEPTR[STRN+1]

DECCX

S2:

PUSHCX

MOVCX,DI

SUBCX,BX

S1:

MOVAL,[SI]

CMPAL,[BX]

JENEXTCHAR

INCBX

LOOPS1

MOV[DI],AL

INCDI

NEXTCHAR:

LEABX,STRN+2

INCSI

POPCX

LOOPS2

MOVBYTEPTR[DI],'$';显示个数

LEADX,STRN+2

MOVAH,09

INT21H

MOVAX,4C00H

INT21H

CODEENDS

ENDSTART

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 成考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1