中南大学微机接口实验代码软件及硬件.docx
- 文档编号:27183478
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:19
- 大小:16.46KB
中南大学微机接口实验代码软件及硬件.docx
《中南大学微机接口实验代码软件及硬件.docx》由会员分享,可在线阅读,更多相关《中南大学微机接口实验代码软件及硬件.docx(19页珍藏版)》请在冰豆网上搜索。
中南大学微机接口实验代码软件及硬件
中南大学微机接口四个实验的完整代码,希望对您有所帮助!
试验一:
DATASSEGMENT
DATASENDS
DATASEGMENT
AADB'pleaseinputthealphabet:
','$'
DATAENDS
STACKSSEGMENT
STACKSENDS
CODESSEGMENT
ASSUMECS:
CODES,DS:
DATAS,SS:
STACKS
START:
MOVAX,DATA
MOVDS,AX
MOVDX,OFFSETAA
MOVAH,09H
INT21H
MOVAX,DATAS
MOVDS,AX
MOVAH,01H;功能码:
等待按键,在按键后把字符显示在屏幕上
INT21H;中断
MOVBL,AL
ANDAL,0F0H
SHRAL,4
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVAL,BL
ANDAL,0FH
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVAH,4CH;结束程序
INT21H
CODESENDS
ENDSTART
实验二传送并排序STACK1SEGMENTSTACK
DW256DUP(?
)
STACK1ENDS
DDATASEGMENT
MSRDB'shgsejoaHOajoirWEJ4$'
LENEQU$-MSR
DDATAENDS
EXDASEGMENT
MSDDBLENDUP(?
)
EXDAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DDATA,ES:
EXDA
START:
MOVAX,DDATA
MOVDS,AX
MOVAX,EXDA
MOVES,AX
MOVSI,OFFSETMSR
MOVDI,OFFSETMSD
MOVCX,LEN
MOVBX,0
NEXT:
MOVAL,MSR[BX]
MOVES:
MSD[BX],AL
INCBX
LOOPNEXT
MOVDX,0
XUNHUAN:
MOVCX,LEN-2
SUBCX,DX
MOVBX,DX
INCBX
NEXT2:
PUSHBX
MOVBX,DX
MOVAH,ES:
MSD[BX]
POPBX
MOVAL,ES:
MSD[BX]
CMPAH,AL
JSXIAOYU
PUSHBX
MOVBX,DX
MOVAH,ES:
MSD[BX]
POPBX
MOVAL,ES:
MSD[BX]
PUSHBX
MOVBX,DX
MOVES:
MSD[BX],AL
POPBX
MOVES:
MSD[BX],AH
XIAOYU:
INCBX
LOOPNEXT2
INCDX
CMPDX,LEN-2
JNEXUNHUAN
PUSHES
POPDS
MOVDX,OFFSETMSD
MOVAH,9
INT21H
MOVAX,4C00H
INT21H
CODEENDS
ENDSTART
实验三
DATASSEGMENT
JIANDB'Thejianshuis:
','$'
BEIDB'Thebeijianshuis:
','$'
REDB'Theresultis:
','$'
XHDB'PressYtocontinue:
','$'
ERDB'ERROR!
INPUTAGAIN:
','$'
HHDB0DH,0AH,'$'
DATA1DB5DUP(?
)
DATA2DB5DUP(?
)
DATA3DB5DUP(?
)
DATA4DB'0','1','2','3','4','5','6','7','8','9',''
SHUBDB'Pleaseinputthebeijianshu(0-99999):
','$'
SHUJDB'Pleaseinputthejianshu(0-99999):
','$'
;此处输入数据段代码
DATASENDS
STACKSSEGMENT
;此处输入堆栈段代码
STACKSENDS
CODESSEGMENT
ASSUMECS:
CODES,DS:
DATAS,SS:
STACKS
START:
A1:
MOVAX,DATAS
MOVDS,AX
MOVAH,9
MOVDX,OFFSETSHUB
INT21H
IB1:
MOVDX,5
IB:
MOVAH,1
INT21H
MOVBX,0
MOVCX,11
JICE:
CMPAL,DATA4[BX]
JENOM
INCBX
LOOPJICE
MOVAH,9
MOVDX,OFFSETHH
INT21H
MOVAH,9
MOVDX,OFFSETER
INT21H
JMPIB1
NOM:
MOVCX,DX
DECDX
CMPAL,''
JBEQ
MOVAH,DATA1[3]
MOVDATA1[4],AH
MOVAH,DATA1[2]
MOVDATA1[3],AH
MOVAH,DATA1[1]
MOVDATA1[2],AH
MOVAH,DATA1[0]
MOVDATA1[1],AH
MOVDATA1[0],AL
LOOPIB
CMPCX,1
JMPA
Q:
MOVAX,5
SUBAX,CX
MOVBX,AX
Q1:
MOVDATA1[BX],'0'
INCBX
LOOPQ1
A:
MOVAH,9
MOVDX,OFFSETHH
INT21H
MOVAH,9
MOVDX,OFFSETSHUJ
INT21H
MOVCX,5
MOVBX,4
IJ1:
MOVDX,5
IJ:
MOVAH,1
INT21H
MOVBX,0
MOVCX,11
JICE2:
CMPAL,DATA4[BX]
JENOM2
INCBX
LOOPJICE2
MOVAH,9
MOVDX,OFFSETHH
INT21H
MOVAH,9
MOVDX,OFFSETER
INT21H
JMPIJ1
NOM2:
MOVCX,DX
DECDX
CMPAL,''
JBER
MOVAH,DATA2[3]
MOVDATA2[4],AH
MOVAH,DATA2[2]
MOVDATA2[3],AH
MOVAH,DATA2[1]
MOVDATA2[2],AH
MOVAH,DATA2[0]
MOVDATA2[1],AH
MOVDATA2[0],AL
LOOPIJ
CMPCX,1
JBEB
R:
MOVAX,5
SUBAX,CX
MOVBX,AX
R1:
MOVDATA2[BX],'0'
INCBX
LOOPR1
B:
MOVAH,9
MOVDX,OFFSETHH
INT21H
MOVAH,9
MOVDX,OFFSETBEI
INT21H
MOVBX,4
MOVCX,4
L1:
CMPDATA1[BX],'0'
JEP1
JMPXB1
P1:
DECBX
LOOPL1
XB1:
INCCX
XB:
MOVDL,DATA1[BX]
MOVAH,2
INT21H
DECBX
LOOPXB
MOVAH,9
MOVDX,OFFSETHH
INT21H
MOVAH,9
MOVDX,OFFSETJIAN
INT21H
MOVBX,4
MOVCX,4
L2:
CMPDATA2[BX],'0'
JEP2
JMPXJ1
P2:
DECBX
LOOPL2
XJ1:
INCCX
XJ:
MOVDL,DATA2[BX]
MOVAH,2
INT21H
DECBX
LOOPXJ
MOVAH,9
MOVDX,OFFSETHH
INT21H
MOVAH,9
MOVDX,OFFSETRE
INT21H
MOVBX,4
MOVCX,5
ZHU1:
MOVAL,DATA1[BX]
SUBAL,30H
MOVDATA1[BX],AL
MOVAL,DATA2[BX]
SUBAL,30H
MOVDATA2[BX],AL
DECBX
LOOPZHU1
MOVBX,4
MOVCX,5
BJ:
MOVAH,DATA1[BX]
CMPAH,DATA2[BX]
JBFH
CMPAH,DATA2[BX]
JEBJ1
JMPZJ
BJ1:
DECBX
LOOPBJ
ZJ:
MOVCX,5
MOVBX,0
CLC
JF:
MOVAL,DATA1[BX]
SBBAL,DATA2[BX]
AAS
MOVDATA3[BX],AL
INCBX
LOOPJF
CLC
JMPZH
FH:
MOVAH,2
MOVDL,'-'
INT21H
MOVCX,5
MOVBX,0
CLC
FJ:
MOVAL,DATA2[BX]
SBBAL,DATA1[BX]
AAS
MOVDATA3[BX],AL
INCBX
LOOPFJ
CLC
ZH:
MOVCX,5
MOVBX,0
ZHU2:
ANDDATA3[BX],0FH
ADDDATA3[BX],30H
INCBX
LOOPZHU2
MOVBX,4
MOVCX,4
L3:
CMPDATA3[BX],'0'
JBEP3
JMPXR1
P3:
DECBX
LOOPL3
XR1:
INCCX
XR:
MOVDL,DATA3[BX]
MOVAH,2
INT21H
DECBX
LOOPXR
MOVAH,9
MOVDX,OFFSETHH
INT21H
MOVAH,9
MOVDX,OFFSETXH
INT21H
MOVAH,1
INT21H
CMPAL,'Y'
JET1
JMPT0
T0:
CMPAL,'y'
JET1
JMPT2
T1:
MOVAH,9
MOVDX,OFFSETHH
INT21H
JMPA1
T2:
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
实验四分支子程序
DATASEGMENT
AADB'pleasechoosethetypeyouwanttochangeto:
'
DB0DH,0AH,'1TOHEX'
DB0DH,0AH,'2TOBCD'
DB0DH,0AH,'3TOQIDUAN'
DB0DH,0AH,'4EXIT',0DH,0AH,'$'
BBDB100
DB?
DB100DUP(?
)
DD2DB'Pleaseinputanumber>=two',0DH,0AH,'$'
TABLE1DB40H,79H,24H,30H,19H
DB12H,02H,78H,00H,18H
TABLE2DB00H,00H,00H,00H,01H
DB01H,01H,01H,10H,10H
TABLE3DB00H,01H,10H,11H,00H
DB01H,10H,11H,00H,01H
DATAENDS
MSTACKSEGMENT
CCDB125DUP(0)
MSTACKENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,SS:
MSTACK
START:
MOVAX,DATA
MOVDS,AX
MOVDX,OFFSETDD2
MOVAH,09H
INT21H
MOVDX,OFFSETBB
MOVAH,0AH
INT21H
MOVDL,0AH;回车换行
MOVAH,2
INT21H
MOVDX,OFFSETBB
;INCDX
;INCDX
MOVAH,09H
INT21H
MOVDL,0AH;回车换行
MOVAH,2
INT21H
MOVDX,OFFSETAA
MOVAH,09H
INT21H
MOVAH,01H
INT21H;提是输入并输入
MOVDL,0AH;回车换行
MOVAH,2
INT21H
;CMPAL,'1'
;JEHEX1
CMPAL,'2'
JNEHHHH
JMPBCD2
HHHH:
CMPAL,'3'
JEQIDUAN3
CMPAL,'4';选择功能
MOVAX,4C00H
INT21H
QIDUAN3:
MOVDI,OFFSETBB
MOVDX,DI
INCDX
MOVDI,DX
MOVCL,[DI]
MOVCH,0
MOVDX,DI
INCDX
MOVDI,DX
FANYI:
MOVAL,[DI]
ANDAL,0FH
MOVAH,0
MOVBX,OFFSETTABLE1
XLATTABLE1
PUSHAX
SHRAL,04H
ANDAL,0FH
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
POPAX
ANDAL,0FH
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVDX,DI
INCDX
MOVDI,DX
LOOPFANYI
MOVAX,4C00H
INT21H
BCD2:
MOVDI,OFFSETBB
MOVDX,DI
INCDX
MOVDI,DX
MOVCL,[DI]
MOVCH,0
MOVDX,DI
INCDX
MOVDI,DX
FANYI2:
MOVAL,[DI]
ANDAL,0FH
MOVAH,0
PUSHAX
MOVBX,OFFSETTABLE2
XLATTABLE2
PUSHAX
SHRAL,04H
ANDAL,0FH
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
POPAX
ANDAL,0FH
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
POPAX
MOVBX,OFFSETTABLE3
XLATTABLE3
PUSHAX
SHRAL,04H
ANDAL,0FH
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
POPAX
ANDAL,0FH
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVDX,DI
INCDX
MOVDI,DX
LOOPFANYI2
CODEENDS
ENDSTART
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中南 大学 微机 接口 实验 代码 软件 硬件