计算机控制实验程序学生.docx

上传人:b****3 文档编号:26558984 上传时间:2023-06-20 格式:DOCX 页数:49 大小:22.76KB
下载 相关 举报
计算机控制实验程序学生.docx_第1页
第1页 / 共49页
计算机控制实验程序学生.docx_第2页
第2页 / 共49页
计算机控制实验程序学生.docx_第3页
第3页 / 共49页
计算机控制实验程序学生.docx_第4页
第4页 / 共49页
计算机控制实验程序学生.docx_第5页
第5页 / 共49页
点击查看更多>>
下载资源
资源描述

计算机控制实验程序学生.docx

《计算机控制实验程序学生.docx》由会员分享,可在线阅读,更多相关《计算机控制实验程序学生.docx(49页珍藏版)》请在冰豆网上搜索。

计算机控制实验程序学生.docx

计算机控制实验程序学生

 

计算机控制技术

实验程序集

 

河南大学

计算机与信息工程学院

 

STACKSEGMENTSTACK

DW256DUP(?

STACKENDS

CODESEGMENT

ASSUMECS:

CODE

START:

MOVAL,90H

OUT63H,AL

MOVAL,0A4H

OUT43H,AL

MOVAL,17H

OUT42H,AL

AGAIN:

CALLDELAY

INAL,60H

OUT00H,AL

PUSHAX

MOVAX,0001H

INT10H

POPAX

CALLDISPLAY

JMPAGAIN

DELAY:

PUSHCX

MOVCX,3000H

DEL1:

PUSHAX

POPAX

LOOPDEL1

POPCX

RET

 

DISPLAY:

MOVCL,04H

MOVDL,AL

SHRAL,CL

CMPAL,09H

JBEDIS1

ADDAL,07H

DIS1:

ADDAL,30H

MOVAH,01H

INT10H

ANDDL,0FH

CMPDL,09H

JBEDIS2

ADDDL,07H

DIS2:

ADDDL,30H

MOVAL,DL

MOVAH,01H

INT10H

RET

CODEENDS

ENDSTART

STACKSEGMENTSTACK

DW256DUP(?

STACKENDS

CODESEGMENT

ASSUMECS:

CODE

START:

MOVAL,90H

OUT63H,AL

MOVAL,0A4H

OUT43H,AL

MOVAL,17H

OUT42H,AL

MOVAX,2000H+OFFSETIRQ7

MOVSI,003CH

MOV[SI],AX

MOVAX,0000H

MOVSI,003EH

MOV[SI],AX

CLI

INAL,21H

ANDAL,7FH

OUT21H,AL

MOVAL,00H

OUT61H,AL

MOVBL,40H

MOVAL,06H

OUT61H,AL

MOVCH,06H

AGAIN:

STI

HLT

JMPAGAIN

 

IRQ7:

PUSHAX

INAL,60H

OUT00H,AL

MOVAL,BL

OUT61H,AL

CALLDELAY

MOVAL,00H

OUT61H,AL

MOVAL,CH

CMPAL,06H

JZCY

MOVBL,40H

MOVAL,06H

OUT61H,AL

MOVCH,06H

JMPCY1

CY:

MOVBL,80H

MOVAL,07H

OUT61H,AL

MOVCH,07H

CY1:

MOVAL,20H

OUT20H,AL

POPAX

IRET

DELAY:

PUSHCX

MOVCX,0010H

DEL1:

LOOPDEL1

POPCX

RET

DELAY2:

PUSHCX

MOVCX,0068H

DEL2:

LOOPDEL2

POPCX

RET

CODEENDS

ENDSTART

STACKSEGMENTSTACK

DW256DUP(?

STACKENDS

DATASEGMENT

TKDB(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

PUSHDS

MOVAL,90H

OUT63H,AL

MOVAL,0A4H

OUT43H,AL

MOVAL,2EH

OUT42H,AL

MOVAX,0000H

MOVDS,AX

MOVAX,2000H+OFFSETIRQ7

MOVSI,003CH

MOV[SI],AX

MOVAX,0000H

MOVSI,003EH

MOV[SI],AX

POPDS

CLI

INAL,21H

ANDAL,7FH

OUT21H,AL

MOVBL,TK

AGAIN:

STI

HLT

JMPAGAIN

 

IRQ7:

DECBL

JNZCLEAR_DA

INAL,60H

OUT00H,AL

MOVBL,TK

FINISH:

MOVAL,20H

OUT20H,AL

IRET

CLEAR_DA:

MOVAL,80H

OUT00H,AL

JMPFINISH

CODEENDS

ENDSTART

 

STACKSEGMENTSTACK

DW256DUP(?

STACKENDS

DATASEGMENT

TKDB(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

PUSHDS

MOVAL,90H

OUT63H,AL

MOVAL,0A4H

OUT43H,AL

MOVAL,2EH

OUT42H,AL

MOVAX,0000H

MOVDS,AX

MOVAX,2000H+OFFSETIRQ7

MOVSI,003CH

MOV[SI],AX

MOVAX,2000H+OFFSETIRQ6

MOVSI,0038H

MOV[SI],AX

MOVAX,0000H

MOVSI,003EH

MOV[SI],AX

MOVSI,003AH

MOV[SI],AX

POPDS

CLI

INAL,21H

ANDAL,3FH

OUT21H,AL

MOVAL,80H

OUT00H,AL

MOVBL,01H

AGAIN:

STI

HLT

JMPAGAIN

 

IRQ7:

DECBL

JNZFINISH

INAL,60H

OUT00H,AL

MOVBL,TK

FINISH:

MOVAL,20H

OUT20H,AL

IRET

IRQ6:

CALLDELAY

MOVAL,80H

OUT00H,AL

MOVBL,01H

JMPFINISH

DELAY:

PUSHCX

MOVCX,1000H

DEL1:

PUSHAX

POPAX

LOOPDEL1

POPCX

RET

CODEENDS

ENDSTART

STACKSEGMENTSTACK

DW256DUP(?

STACKENDS

DATASEGMENT

TKDB20H

CCDB95

NCCDW(?

aDB05

NaDW(?

aYkDW0000H

XkDW(?

MARKDB01H

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

PUSHDS

MOVAX,0000

MOVDS,AX

MOVAL,90H

OUT63H,AL

MOVAL,0A4H

OUT43H,AL

MOVAL,17H

OUT42H,AL

MOVAX,2000H+OFFSETIRQ6

MOVSI,0038H

MOV[SI],AX

MOVAX,2000H+OFFSETIRQ7

MOVSI,003CH

MOV[SI],AX

MOVAX,0000H

MOVSI,003EH

MOV[SI],AX

MOVSI,003AH

MOV[SI],AX

MOVaYk,AX

MOVMARK,AL

POPDS

CLI

INAL,21H

ANDAL,3FH

OUT21H,AL

MOVSI,OFFSETCC

MOVCL,02H

CALLDATACHANGE

MOVBL,01H

MOVAL,80H

OUT00H,AL

AGAIN:

STI

HLT

JMPAGAIN

DATACHANGE:

ANDAL,AL

MOVDX,0000H

MOVBL,0FH

MOVAL,[SI]

GOON:

ADDAL,AL

DAA

RCLDX,0001H

DECBL

JNZGOON

INCSI

MOV[SI],DX

INCSI

INCSI

DECCL

JNZDATACHANGE

RET

 

IRQ7:

DECBL

JNZFINISH

INAL,60H

SUBAL,80H

MOVAH,AL

MOVAL,00H

MOVDX,NCC

MOVXk,AX

IMULDX

MOVAL,MARK

CMPAL,00H

JZWF

MOVAX,aYk

ADDDX,AX

MOVAL,DH

ADDAL,80H

OUT00H,AL

MOVAX,Na

IMULDX

FIN:

MOVaYk,DX

MOVBL,TK

FINISH:

MOVAL,20H

OUT20H,AL

IRET

WF:

MOVAX,aYk

ANDAL,AL

SBBDX,AX

MOVAL,DH

ADDAL,80H

OUT00H,AL

MOVAX,Xk

MOVDX,Na

IMULDX

JMPFIN

 

IRQ6:

CALLDELAY

MOVAL,80H

OUT00H,AL

MOVBL,01H

JMPFINISH

DELAY:

PUSHCX

MOVCX,1000H

DEL1:

PUSHAX

POPAX

LOOPDEL1

POPCX

RET

CODEENDS

ENDSTART

STACKSEGMENTSTACK

DW256DUP(?

STACKENDS

DATASEGMENT

TKDB02H

A1DB10D

BA1DW(?

A2DB20D

BA2DW(?

A3DB30D

BA3DW(?

A4DB40D

BA4DW(?

A2XkDW(?

A3Xk_1DW(?

A4Xk_2DW(?

ALLADDDW(?

XkDB(?

XXkDB(?

Xk_1DB(?

Xk_2DB(?

MARKDB00H

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

PUSHDS

MOVAX,0000H

MOVDS,AX

MOVAL,90H

OUT63H,AL

MOVAL,0A4H

OUT43H,AL

MOVAL,17H

OUT42H,AL

MOVAX,2000H+OFFSETIRQ7

MOVSI,003CH

MOV[SI],AX

MOVAX,2000H+OFFSETIRQ6

MOVSI,0038H

MOV[SI],AX

MOVAX,0000H

MOVSI,003EH

MOV[SI],AX

MOVSI,003AH

MOV[SI],AX

NOP

NOP

NOP

MOVXk,AL

MOVXk_1,AL

MOVALLADD,AX

MOVMARK,AL

POPDS

CLI

INAL,21H

ANDAL,3FH

OUT21H,AL

MOVSI,OFFSETA1

MOVCL,04H

CALLDATACHANGE

MOVBL,01H

MOVAL,80H

OUT00H,AL

AGAIN:

STI

HLT

JMPAGAIN

IRQ7:

DECBL

JNZFINISH

INAL,60H

SUBAL,80H

MOVXk,AL

MOVAH,AL

MOVAL,00H

MOVDX,BA1

IMULDX

MOVAX,ALLADD

ADDDX,AX

MOVAL,DH

ADDAL,80H

OUT00H,AL

MOVAL,Xk_1

MOVXk_2,AL

MOVAL,XXk

MOVXk_1,AL

MOVAL,Xk

MOVXXk,AL

MOVAH,XXk

MOVAL,00H

MOVDX,BA2

IMULDX

MOVA2Xk,DX

MOVAH,Xk_1

MOVAL,00H

MOVDX,BA3

IMULDX

MOVA3Xk_1,DX

MOVAH,Xk_2

MOVAL,00H

MOVDX,BA4

IMULDX

MOVA4Xk_2,DX

MOVAL,MARK

CMPAL,00H

JZWFPH

MOVAX,A2Xk

ADDDX,AX

MOVAX,A3Xk_1

DDDX,AX

FIN:

MOVALLADD,DX

MOVBL,TK

FINISH:

MOVAL,20H

OUT20H,AL

IRET

WFPH:

MOVDX,A2Xk

MOVAX,A3Xk_1

ANDAL,AL

SBBDX,AX

MOVAX,A4Xk_2

ANDAL,AL

SBBDX,AX

JMPFIN

DATACHANGE:

ANDAL,AL

MOVDX,0000H

MOVBL,0FH

MOVAL,[SI]

GOON:

ADDAL,AL

DAA

RCLDX,0001H

DECBL

JNZGOON

INCSI

MOV[SI],DX

INCSI

INCSI

DECCL

JNZDATACHANGE

RET

IRQ6:

CALLDELAY

MOVAL,80H

OUT00H,AL

MOVBL,01H

JMPFINISH

DELAY:

PUSHCX

MOVCX,1000H

DEL1:

PUSHAX

POPAX

LOOPDEL1

POPCX

RET

CODEENDS

ENDSTART

STACKSEGMENTSTACK

DW256DUP(?

STACKENDS

CODESEGMENT

ASSUMECS:

CODE

START:

MOVAL,80H

OUT00H,AL

HLT

JMPSTART

CODEENDS

ENDSTART

STACKSEGMENTSTACK

DW256DUP(?

STACKENDS

DATAEGMENT

TKDB01H

A1DB10H

BA1DW(?

A2DB20H

BA2DW(?

A3DB30H

BA3DW(?

A4DB40H

BA4DW(?

A2XkDW(?

A3Xk_1DW(?

A4Xk_2DW(?

ALLADDDW(?

XkDB(?

XXkDB(?

Xk_1DB(?

Xk_2DB(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

PUSHDS

MOVAX,0000H

MOVDS,AX

MOVAL,90H

OUT63H,AL

MOVAL,0A4H

OUT43H,AL

MOVAL,17H

OUT42H,AL

MOVAX,2000H+OFFSETIRQ7

MOVSI,003CH

MOV[SI],AX

MOVAX,0000H

MOVSI,003EH

MOV[SI],AX

MOVXK,AL

MOVXK_1,AL

MOVALLADD,AX

POPDS

CLI

INAL,21H

ANDAL,7FH

OUT21H,AL

MOVSI,OFFSETA1

MOVCL,04H

CALLDATACHANGE

MOVAL,80H

OUT00H,AL

MOVBL,01H

AGAIN:

STI

HLT

JMPAGAIN

DATACHANGE:

ANDAL,AL

MOVDX,0000H

MOVBL,10H

MOVAL,[SI]

GOON:

ADDAL,AL

DAA

RCLDX,0001H

DECBL

JNZGOON

INCSI

MOV[SI],DX

INCSI

INCSI

DECCL

JNZDATACHANGE

RET

 

IRQ7:

DECBL

JNZFINISH

INAL,60H

SUBAL,80H

MOVXk,AL

MOVAH,AL

MOVAL,00H

MOVDX,BA1

CALLML

MOVAX,ALLADD

ADDDX,AX

MOVAL,DH

ADDAL,80H

OUT00H,AL

MOVAL,Xk_1

MOVXk_2,AL

MOVAL,XXk

MOVXk_1,AL

MOVAL,Xk

MOVXXk,AL

MOVAH,XXk

MOVAL,00H

MOVDX,BA2

CALLML

MOVA2Xk,DX

MOVAH,Xk_1

MOVAL,00H

MOVDX,BA3

CALLML

MOVA3Xk_1,DX

MOVAH,Xk_2

MOVAL,00H

MOVDX,BA4

CALLML

MOVA4Xk_2,DX

MOVAX,A2Xk

ADDDX,AX

MOVAX,A3Xk_1

ADDDX,AX

FIN:

MOVALLADD,DX

MOVBL,TK

FINISH:

MOVAL,20H

OUT20H,AL

IRET

ML:

CMPDX,7FFFH

JAML1

IMULDX

RET

ML1:

PUSHBX

PUSHCX

PUSHAX

SUBDX,7FFFH

IMULDX

MOVBX,DX

MOVCX,AX

POPAX

MOVDX,7FFFH

IMULDX

ADDAX,CX

ADCDX,BX

POPCX

POPBX

RET

CODEENDS

ENDSTART

STACKSEGMENTSTACK

DW256DUP(?

STACKENDS

DATASEGMENT

TKDB02H

CCDB20H

NCCDW(?

aDB80H

BaDW(?

aYkDW

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

当前位置:首页 > 幼儿教育 > 育儿理论经验

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

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