太原理工大学现代科技学院微机原理实验.docx

上传人:b****8 文档编号:10953381 上传时间:2023-02-23 格式:DOCX 页数:39 大小:1.03MB
下载 相关 举报
太原理工大学现代科技学院微机原理实验.docx_第1页
第1页 / 共39页
太原理工大学现代科技学院微机原理实验.docx_第2页
第2页 / 共39页
太原理工大学现代科技学院微机原理实验.docx_第3页
第3页 / 共39页
太原理工大学现代科技学院微机原理实验.docx_第4页
第4页 / 共39页
太原理工大学现代科技学院微机原理实验.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

太原理工大学现代科技学院微机原理实验.docx

《太原理工大学现代科技学院微机原理实验.docx》由会员分享,可在线阅读,更多相关《太原理工大学现代科技学院微机原理实验.docx(39页珍藏版)》请在冰豆网上搜索。

太原理工大学现代科技学院微机原理实验.docx

太原理工大学现代科技学院微机原理实验

 

太原理工大学现代科技学院

 

微机原理及接口技术课程实验报告

 

专业班级信息13-1班

学号2013101269

姓名陈凯

指导教师师卫

……………………………………装………………………………………订…………………………………………线………………………………………

实验名称多位十进制数相加同组人

专业班级信息13-1班学号2013101269姓名陈凯成绩

实验一:

多位十进制数相加

1、实验目的:

学习数据传送和算数运算指令的用法。

2、实验内容:

将两个朵唯十进制数28056、47193相加,并显示加数、被加数、和。

要求两个家属均以ASCII码形式各自顺序存在DATA1和DATA2内存单元中,结果送回DATA1处(低位在前,高位在后)。

3、实验程序:

SHOWMACROB

MOVDL,B

MOVAH,02H

INT21H

ENDM

DATASEGMENT

DATA1DB33H,39H,31H,37H,34H

DATA2DB36H,35H,30H,38H,32H

DATA3DB'_',0DH,0AH,'$'

DATAENDS

STACKSEGMENTSTACK

STADB20DUP(?

TOPEQULENGTHSTA

STACKENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA,SS:

STACK,ES:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVAX,STACK

MOVSS,AX

MOVAX,TOP

MOVSP,AX

MOVSI,OFFSETDATA2

MOVBX,05

SHOW20H

CALLDISPL

SHOW0DH

SHOW0AH

MOVSI,OFFSETDATA1

MOVBX,05

SHOW2BH

CALLDISPL

SHOW0DH

SHOW0AH

MOVCL,7

S1:

SHOW2DH

LOOPS1

SHOW0DH

SHOW0AH

MOVSI,OFFSETDATA1

MOVDI,OFFSETDATA2

CALLADDA

MOVSI,OFFSETDATA1

MOVBX,05

SHOW20H

CALLDISPL

MOVAX,4C00H

INT21H

DISPLPROCNEAR

DS1:

SHOW[SI+BX-1]

DECBX

JNZDS1

RET

DISPLENDP

ADDAPROCNEAR

MOVDX,SI

MOVBP,DI

MOVBX,05

AD1:

SUBBYTEPTR[SI+BX-1],30H

SUBBYTEPTR[DI+BX-1],30H

DECBX

JNZAD1

MOVSI,DX

MOVDI,BP

MOVCX,05

CLC

AD2:

MOVAL,[SI]

MOVBL,[DI]

ADCAL,BL

AAA

MOV[SI],AL

INCSI

INCDI

LOOPAD2

MOVSI,DX

MOVDI,BP

MOVBX,05

AD3:

ADDBYTEPTR[SI+BX-1],30H

ADDBYTEPTR[DI+BX-1],30H

DECBX

JNZAD3

RET

ADDAENDP

CODEENDS

ENDSTART

四、实验截图

下图为实验程序及其编译截图:

正确结果:

实验名称两个十进制数的乘法同组人

专业班级信息13-1班学号2013101269姓名陈凯成绩

实验二:

两个十进制数的乘法

1、实验目的:

掌握乘法指令和循环指令的用法。

2、实验内容:

实现十进制数的乘法。

被乘数(29054)和乘数(3)均以ASCII码的形式存放在内存中,乘数、被乘数、积均在屏幕上显示出来。

3、实验程序

SHOWMACROB

MOVAH,02H

MOVDL,B

INT21H

ENDM

DATASEGMENT

DATA1DB32H,39H,30H,35H,34H

DATA2DB33H

RESULTDB6DUP(00H)

DATAENDS

STACKSEGMENT

STADB20DUP(?

TOPEQULENGTHSTA

STACKENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA,SS:

STACK,ES:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVAX,STACK

MOVSS,AX

MOVAX,TOP

MOVSP,AX

MOVSI,OFFSETDATA1

MOVCL,5

SHOW20H

CALLDISPL

SHOW0DH

SHOW0AH

SHOW2AH

MOVSI,OFFSETDATA2

MOVBL,[SI]

ANDBL,00001111B

MOVCL,1

CALLDISPL

SHOW0DH

SHOW0AH

MOVCL,7

S1:

SHOW2DH

LOOPS1

SHOW0DH

SHOW0AH

MOVSI,OFFSETDATA1

MOVDI,OFFSETRESULT

MOVAX,00H

MOVCX,05

LOOP1:

MOVAL,[SI]

ANDAL,00001111B

INCSI

MULBL

AAM

ADDAH,[DI]

AAA

MOV[DI],AH

INCDI

MOV[DI],AL

LOOPLOOP1

MOVSI,OFFSETRESULT

MOVCX,06

LOP:

MOVDL,[SI]

ADDDL,30H

MOV[SI],DL

INCSI

LOOPLOP

MOVSI,OFFSETRESULT

MOVCL,6

CALLDISPL

MOVAX,4C00H

INT21H

DISPLPROCNEAR

SD1:

SHOW[SI]

INCSI

LOOPSD1

RET

DISPLENDP

CODEENDS

ENDSTART

4、实验截图

实验程序与编译:

实验运行结果:

实验名称统计数据个数程序同组人

专业班级信息13-1班学号2013101269姓名陈凯成绩

实验三:

统计数据个数

1、实验目的:

掌握多位十六进制数转换成朵唯十进制数的ASCII码的方法。

2、实验内容:

统计内存数组中大于0和小于0的元素的个数,并将统计结果分别存放在LRESULT和HResult变量中,并显示个数。

3、实验程序:

DATASEGMENT

ARYDB1,3,-1,2,6,-9,-5,7,8,1,3,8,-6,8,-9,-7,2,4,-3,-3

DB-4,7,7,8,3,1,3,6,8,5,5,6,4,5,7,-4,2,4,5,-7,5,4

DB2,5,7,8,8,8,7,6,-5,4,3,2,1,-1,2,2,3,-4,5,6,7

N=$-ARY

LRESULTDW0

HRESULTDW0

TJJGDB'STATISTICSRESULT:

',0DH,0AH,'$'

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVES,AX

SHOWMACROB

PUSHDX

PUSHAX

MOVDX,B

MOVAH,02H

INT21H

POPAX

POPDX

ENDM

XORCX,CX

MOVCX,N

LEASI,ARY

LOP:

MOVAL,[SI]

CMPAL,0

JNSPLUS

INCLRESULT

JMPCONT

PLUS:

INCHRESULT

CONT:

INCSI

LOOPLOP

LEADX,TJJG

MOVAH,09H

INT21H

SHOW'+'

MOVAX,HRESULT

CALLDISPL

SHOW0DH

SHOW0AH

SHOW'-'

MOVAX,LRESULT

CALLDISPL

MOVAX,4C00H

INT21H

DISPLPROC

PUSHDX

PUSHAX

MOVCX,10

MOVDX,00H

MOVBX,00H

DIVCX

MOVBX,DX

ADDAL,30H

DISPL1:

MOVDL,AL

MOVAH,02H

INT21H

MOVDL,BL

ADDDL,30H

MOVAH,02H

INT21H

POPAX

POPDX

RET

DISPLENDP

CODEENDS

ENDSTART

 

4、实验截图

实验调试编译程序:

实验运行结果:

……………………………………装………………………………………订…………………………………………线………………………………………

实验名称8255与开关电路实验同组人

专业班级信息13-1班学号2013101269姓名陈凯成绩

实验四:

8255A与开关电路的实验

1、实验目地:

(1)掌握8255A并行接口芯片的原理及编程方法;

(2)掌握读取开关状态的方法。

2、实验内容:

编写程序,通过8255A接口芯片,读取开关状态,并在PC机屏幕上显示出来。

3、线路连接:

实验中共有8个逻辑开关,8255A端口C的8位连接8个,开关向上拨时,8255A相应的端口输出高电平‘1’;开关向下拨时,响应端口输出低电平’0‘。

4、实验程序

DATASEGMENT

IOPORTEQU0D880H-280H

IO8255CEQUIOPORT+282H

IO8255TEQUIOPORT+283H

TABDB'12345678',0DH,0AH,'$'

MESSDB'PLEASEENTERANYKEYWHENREADY!

',0DH,0AH,'$'

DATAENDS

STACKSEGMENTSTACK

STADW50DUP(?

STACKENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA,ES:

DATA,SS:

STACK

START:

MOVAX,DATA

MOVDS,AX

MOVES,AX

MOVAH,09H

MOVDX,OFFSETMESS

INT21H

MOVAH,01H

INT21H

MOVDX,IO8255T

MOVAL,99H

OUTDX,AL

MOVDX,IO8255C

INAL,DX

MOVBL,AL

MOVAH,09H

MOVDX,OFFSETTAB

INT21H

MOVCL,08H

BBB:

MOVDL,BL

CALLDISP

SHLBL,1

LOOPBBB

MOVAX,4C00H

INT21H

DISPPROCNEAR

PUSHAX

PUSHCX

MOVCL,07H

ANDDL,80H

SHRDL,CL

POPCX

ADDDL,30H

MOVAH,02H

INT21H

MOVDL,20H

INT21H

MOVDL,20H

INT21H

POPAX

RET

DISPENDP

CODEENDS

ENDSTART

 

5、实验截图

 

程序编译:

实验结果:

……………………………………装………………………………………订…………………………………………线………………………………………

实验名称十字路口红绿灯闪烁实验同组人

专业班级信息13-1班学号2013101269姓名陈凯成绩

实验五:

十字路口红绿灯闪烁实验

1、实验目的:

通过对红绿黄灯的控制,熟练掌握8255A接口芯片的编程方法。

2、实验内容:

对8255A接口芯片进行编程使红黄绿发光二极管按照十字路口交通灯的形式点亮或熄灭。

3、线路连接:

发光二极管共8个,其中两组绿黄红灯用6个,L2,L3,L4为一组,L5,L6,L7为一组,高电平有效。

4、实验程序

DATASEGMENT

IOPORTEQU0D880H-280H

IO8255CEQUIOPORT+282H

IO8255TEQUIOPORT+283H

PBDB?

MESSDB'ENTERANYKEYCANEXITTODOS!

',0DH,0AH,'$'

DATAENDS

STACKSEGMENTSTACK

STADW50DUP(?

TOPEQULENGTHSTA

STACKENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA,ES:

DATA,SS:

STACK

START:

MOVAX,DAT

MOVDS,AX

MOVES,AX

MOVAH,09H

MOVDX,OFFSETMESS

INT21H

MOVDX,IO8255T

MOVAL,81H

OUTDX,AL

MOVDX,IO8255C

INAL,DX

MOVPB,AL

MOVDX,IO8255T

MOVAL,80H

OUTDX,AL

MOVDX,IO8255C

MOVAL,PB

ORAL,0CH

OUTDX,AL

MOVAL,30H

OUTDX,AL

CALLDELAY10

LLL:

MOVDX,IO8255C

MOVAL,12H

OUTDX,AL

CALLDELAY10

CALLDELAY10

CALLDELAY10

CALLDELAY10

MOVAL,10H

OUTDX,AL

MOVCX,0040H

TTT:

MOVAL,0CH

OUTDX,AL

PUSHCX

MOVCX,80H

LOP1:

CALLDELAY1

LOOPLOP1

MOVAL,00H

OUTDX,AL

MOVCX,80H

LOP2:

CALLDELAY1

LOOPLOP2

POPCX

LOOPTTT

MOVAL,30H

OUTDX,AL

CALLDELAY10

MOVAL,21H

OUTDX,AL

CALLDELAY10

CALLDELAY10

CALLDELAY10

CALLDELAY10

MOVAL,20H

OUTDX,AL

MOVCX,0040H

GGG:

MOVAL,0CH

OUTDX,AL

PUSHCX

MOVCX,80H

LOP3:

CALLDELAY1

LOOPLOP3

MOVAL,00H

OUTDX,AL

MOVCX,80H

LOP4:

CALLDELAY1

LOOPLOP4

POPCX

LOOPGGG

MOVAL,30H

OUTDX,AL

CALLDELAY10

MOVAH,06H

MOVDL,0FFH

INT21H

JNZPPP

JMPLLL

PPP:

MOVAX,4C00H

INT21H

DELAY1PROCNEAR

PUSHCX

MOVCX,0FFFFH

CCC:

LOOPCCC

POPCX

RET

DELAY1ENDP

DELAY10PROCNEAR

PUSHAX

PUSHCX

MOVCX,0F00H

UUU:

CALLDELAY1

LOOPUUU

POPCX

POPAX

RET

DELAY10ENDP

CODEENDS

ENDSTART

 

5、实验结果及截图。

编译及连接

实验电路板显示部分截图:

……………………………………装………………………………………订…………………………………………线………………………………………

实验名称直流电机测速实验同组人

专业班级信息13-1班学号2013101269姓名陈凯成绩

实验六:

直流电机测速实验

1、实验目的:

(1)掌握8254的工作原理编码方法。

(2)了解光电开关,掌握用光电传感器测量电机转速的方法。

2、实验内容。

光电测速的基本电路由光电传感器、计数器/定时器组成。

被测电机主轴固定一个圆盘,圆盘的边

缘上有小孔。

传感器的红外发射端口和接送端装在圆盘两侧,点击带动圆盘转到有孔的位置时,红外

光通过,接收管导通,输出低电平。

红外光被挡住时,接收截止,输出高电平。

用计数器/定时器记录

在一定时间内传感器发出的脉冲个数,就可以计算电机转速。

3、线路连接

8254计数器/定时器0和2作为定时器,确定测速时间,定时器0的clk0连1Mhz脉冲频率,out0

作为定时器2的输入,与clk2相连,输out2与8255的PA0端相连。

GATE2均接+5V,8254的定时计

数器1作为计数器,输入CLK1与电机计数端相连,GATE1与8255的PC0连接,电机DJ端与+5V~0

V模拟开关SW1相连。

4、实验程序

DATASEGMENT

IOPORTEQU0D880H-0280H

IO8255KEQUIOPORT+283H

IO8255AEQUIOPORT+280H

IO8255CEQUIOPORT+282H

IO8254KEQUIOPORT+28BH

IO82542EQUIOPORT+28AH

IO82541EQUIOPORT+289H

IO82540EQUIOPORT+288H

MESSDB'STRIKEANYKEY,RETURNTODOS!

',0AH,0DH,'$'

COUDB0

COU1DB0

COUNT1DB0

COUNT2DB0

COUNT3DB0

COUNT4DB0

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVDX,OFFSETMESS

MOVAH,09H

INT21H

MOVDX,IO8254K

MOVAL,36H

OUTDX,AL

MOVDX,IO82540

MOVAX,50000

OUTDX,AL

NOP

NOP

MOVAL,AH

OUTDX,AL

MOVDX,IO8255K

MOVAL,90H

OUTDX,AL

MOVDX,IO8255C

MOVAL,00

OUTDX,AL

LL:

MOVAH,01H

INT16H

JNZQUIT1

MOVDX,IO8254K

MOVAL,70H

OUTDX,AL

MOVDX,IO82541

MOVAL,0FFH

OUTDX,AL

NOP

NOP

OUTDX,AL

MOVDX,IO8254K

MOVAL,90H

OUTDX,AL

MOVDX,IO82542

MOVAL,100

OUTDX,AL

MOVDX,IO8255C

MOVAL,01H

OUTDX,AL

JMPA0

QUIT1:

JMPQUIT

A0:

MOVDX,IO8255A

A1:

INAL,DX

ANDAL,01H

JZA1

MOVDX,IO8255C

MOVAL,00H

OUTDX,AL

MOVDX,IO8254K

MOVAL,70H

OUTDX,AL

MOVDX,IO82541

INAL,DX

MOVBL,AL

INAL,DX

MOVBH,AL

MOVAX,0FFFFH

SUBAX,BX

CALLDISP

MOVDL,0DH

MOVAH,02

INT21H

MOVDL,0AH

MOVAH,02

INT21H

JMPLL

DISPPROCNEAR

MOVDX,0000H

MOVCX,03E8H

DIVCX

MOVCOUNT1,AL

MOVAX,DX

MOVCL,64H

DIVCL

MOVCOUNT2,AL

MOVAL,AH

MOVAH,00H

MOVCL,10

DIVCL

MOVCOUNT3,AL

MOVCOUNT4,AH

MOVAL,COUNT1

CALLDISP1

MOVAL,COUNT2

CALLDISP1

MOVAL,COUNT3

CALLDISP1

MOVAL,COUNT4

CALLDISP1

RET

DISPENDP

DISP1PROCNEAR

ANDAL,0FH

CMPAL,09H

JLENUM

ADDAL,07H

NUM:

ADDAL,30H

MOVDL,AL

MOVAH,02

INT21H

RET

DISP1ENDP

QUIT:

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

5、实验截图

…………………………………装……………………………………订………………………………………线……………………………………………

6、

…………………………………装……………………………………订………………………………………线……………………………………

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

当前位置:首页 > 小学教育 > 小学作文

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

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