OA自动化广工自动化微机实验胶印 精品.docx
《OA自动化广工自动化微机实验胶印 精品.docx》由会员分享,可在线阅读,更多相关《OA自动化广工自动化微机实验胶印 精品.docx(44页珍藏版)》请在冰豆网上搜索。
![OA自动化广工自动化微机实验胶印 精品.docx](https://file1.bdocx.com/fileroot1/2022-10/20/541f2d66-dc11-44bf-b87f-58bf00686265/541f2d66-dc11-44bf-b87f-58bf006862651.gif)
OA自动化广工自动化微机实验胶印精品
(大神出品,不保证没错误)
实验一:
1.1:
STACKSEGMENTSTACK
DW64DUP(?
)
STACKENDS
DATASEGMENT
ORG0500H
DATA1DB5DUP(?
)
ORG050AH
DATA2DB5DUP(?
)
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,SS:
STACK
START:
MOVAX,DATA
MOVDS,AX
MOVCX,5
MOVDI,OFFSETDATA1
MOVSI,OFFSETDATA2
LAB1:
MOVBL,0FFH
MOVAL,[DI]
CMPAL,3AH
JNBOK
SUBAL,30H
JCOK
MOVBL,AL
OK:
MOVAL,BL
MOV[SI],AL
INCDI
INCSI
LOOPLAB1
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
1.2:
STACKSEGMENTSTACK
DW64DUP(?
)
STACKENDS
DATASEGMENT
ORG0500H
DATA1DW78EDH
ORG0510H
DATA2DB5DUP(?
)
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,SS:
STACK
START:
MOVAX,DATA
MOVDS,AX
LEASI,DATA1
LEADI,DATA2+4
MOVBX,000AH
MOVCX,0005H
MOVAX,[SI]
AA0:
MOVDX,0000H
DIVBX
MOV[DI],DL
DECDI
LOOPAA0
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
1.3:
STACKSEGMENTSTACK
DW64DUP(?
)
STACKENDS
DATASEGMENT
ORG0500H
DATA1DB2DUP(?
)
ORG050AH
DATA2DB4DUP(?
)
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVDI,OFFSETDATA1
MOVSI,OFFSETDATA2
MOVAX,[DI]
MOVCX,0004H
MOVBX,1000H
A1:
MOVDX,0000H
DIVBX
CMPAL,0AH
JAEA3
ADDAL,30H
A2:
MOV[SI],AL
INCSI
PUSHDX
MOVAX,BX
MOVBX,0010H
MOVDX,0000H
DIVBX
MOVBX,AX
POPDX
MOVAX,DX
LOOPA1
INT03H
A3:
SUBAL,0AH
ADDAL,41H
JMPA2
CODEENDS
ENDSTART
1.4
STACKSEGMENTSTACK
DW64DUP(?
)
STACKENDS
DATASEGMENT
ORG0500H
DATA1DB8DUP(?
)
ORG0510H
DATA2DB8DUP(?
)
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVDI,OFFSETDATA1
MOVSI,OFFSETDATA2
MOVCX,0004H
MOVBL,0AH
MOVAH,00H
A1:
MOVAL,[DI]
MULBL
INCDI
MOVDL,[DI]
ADDAL,DL
MOV[SI],AL
INCDI
INCSI
LOOPA1
INT03H
CODEENDS
ENDSTART
1.5
STACKSEGMENTSTACK
DW64DUP(?
)
STACKENDS
DATASEGMENT
ORG0600H
DATA1DB?
ORG0610H
JIEGUODB?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
LEASI,DATA1
LEADI,JIEGUO
XORCH,CH
MOVCL,04H
MOVDL,0AH
MOVDH,04H
A1:
MOVAL,[SI]
ANDAL,0FH
MOVBL,AL
MOVAL,[SI]
SHRAL,CL
MULDL
ADDAL,BL
MOV[DI],AL
INCSI
INCDI
DECDH
JNZA2
JMPA3
A2:
JMPA1
A3:
INT03H
CODEENDS
ENDSTART
1.6
STACKSEGMENTSTACK
DW64DUP(?
)
STACKENDS
DATASEGMENT
ORG0300H
DATA1DB2DUP(?
)
ORG0308H
DATA2DB5DUP(?
)
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVDI,OFFSETDATA1
MOVSI,OFFSETDATA2
MOVAX,[DI]
MOVBX,2710H;十进制数的10000
MOVCX,0005H
A1:
MOVDX,0000H
DIVBX
MOV[SI],AL
INCSI
PUSHDX
MOVAX,BX
MOVBX,0AH
MOVDX,0000H
DIVBX
MOVBX,AX
POPDX
MOVAX,DX
LOOPA1
INT03H
CODEENDS
ENDSTART
实验二:
2.1
STACKSSEGMENT
DW64(?
)
STACKSENDS
DATASSEGMENT
ORG0700H
XDW0208H
YDW0509H
ZDW0304H
ORG0710H
QDW?
DATASENDS
CODESSEGMENT
ASSUMECS:
CODES,DS:
DATAS,SS:
STACKS
START:
MOVAX,DATAS
MOVDS,AX
MOVAX,X
ADDAX,Y;X+Y结果存入AX中
AAA;BCD码调整
SUBAX,Z;X+Y-Z结果存入AX
AAS;BCD码调整
MOVQ,AX;Q存入3710单元
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
2.2
STACKSSEGMENT
DW64DUP(?
)
STACKSENDS
DATASSEGMENT
ORG0500H
TABDW0010H,0020H,0030H,0040H,0050H,0060H
ORG0510H
JIEGUODB2DUP(?
)
DATASENDS
CODESSEGMENT
ASSUMECS:
CODES,DS:
DATAS,SS:
STACKS
START:
MOVAX,DATAS
MOVDS,AX
SUBAX,AX
MOVCX,06H
LEADI,TAB
BBB:
ADDAX,[DI]
INCDI
INCDI
DECCX
JNZBBB
MOVBX,06H
CWD
DIVBX
MOVBX,0AH
CWD
DIVBX
LEASI,JIEGUO
MOV[SI],AL
INCSI
MOV[SI],DL
;INT03H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
2.3
STACKSEGMENTSTACK
DW64DUP(?
)
STACKENDS
DATASEGMENT
ORG0500H
DATA1DB10H,15H,0FH
ORG0510H
JIEGUODB?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
LEASI,DATA1
LEADI,JIEGUO
MOVCX,0002H
MOVAL,[SI]
A1:
INCSI
ADDAL,[SI]
LOOPA1
MOVBL,04H
MULBL
MOVDL,64H
MOVAH,00H
DIVDL
MOV[DI],AL
INCDI
MOVAL,AH
MOVAH,00H
MOVDL,0AH
DIVDL
MOV[DI],AL
INCDI
MOV[DI],AH
INT03H
CODEENDS
ENDSTART
2.4
DATASSEGMENT
ORG0550H
XDB65H,67H,87H,19H,32H,54H,76H,98H;低位在低地址,高位在高地址
YDB65H,67H,87H,19H,32H,54H,76H,98H
DATASENDS
STACKSSEGMENT
STACKSENDS
CODESSEGMENT
ASSUMECS:
CODES,DS:
DATAS,SS:
STACKS
START:
MOVAX,DATAS
MOVDS,AX
MOVSI,00H;变址存于SI
MOVCX,04H;循环次数为4
CLC;CF位清零
BBB:
MOVAX,0550H[SI];取被加数4位存于AX中
ADCAX,0558H[SI];被加数4位减去减数4位
MOV0560H[SI],AX;结果存入3060H开始的单元
ADDSI,02H;变址加2
DECCX
JNZBBB;DI不为零时继续循环
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
2.5
STACKSSEGMENT
DW64(?
)
STACKSENDS
DATASSEGMENT
ORG0300H
XDW0608H
YDW0509H
ZDW0306H
ORG0310H
QDW?
DATASENDS
CODESSEGMENT
ASSUMECS:
CODES,DS:
DATAS,SS:
STACKS
START:
MOVAX,DATAS
MOVDS,AX
MO