全球旧事资料 分类
:DATASEGMENTNUMlDD1234H,12345678H:M7Ml为123456781234HMM2DD432lH,8765432lH:NIM2为87654321432lHSUMDD,DATAENDSSTACKSEGMENTPARASTACKSTACKDB100DUPSTACKENDSCODESEGMENTASSUMECS:CODE,SS:STACK,DS:DATA,ES:DArAMAINPAR:主程序BEGIN:PUSHDSMOVAX,0PUSHAXMOVAX,D』uAMOVDS,AXMOVES,AXCALLADD64;调用子程序ADD64RETMAINENDP:子程序名称:ADD64;子程序功能:两个64位数的相加;输入参数:MUMl一被加数的地址;NUM2一加数地址:输出参数:SUM一和数地址ADD64PROCPUSHFPUSHAX:保护现场PUSHBXPUSHCXLEABX,Mmll:Bx指向被加数单元MOVCX,4
6
fCLCAGAIN:MOVAx,Bx】;取被加数的相应字一AxADcAx,Bx8】;与加数相应字相加MOV【BxlOH】,Ax;保存和INCBXINCBXLOOPAGAINPOPCx:恢复现场POPBXPOPAXPOPFRETADD64ENDPCODEENDSENDBEGIN
四编写程序,将一个十六位二进制数转换为ASCLL码,并以十进制数形式在屏幕上输出。(20分)
DATABINARYBUFDATASTACKISEGMENTDW0110110000001100BDW9DUPENDSSEGMENTPARASTACKSTACKDB100HDUPSTACKENDSCODESEGMENTASSUMECSCODEDSDATASTARTPROCFARPUSHDSMOVAX0PUSHAXMOVAXDATAMOVDSAXMOVCXBINARYCXCAALLCONVCALLDISPLAYRETSTARTENDP子程序名称:CONV子程序功能:将CX中十六位二进制数转换为十进制数
7
f;入口参数:CX调用子程序:CHANGECONVPROCNEARPUSHAXPUSHBXPUSHDXPUSHSILEABXBUFMOVAL0AHMOVBXALINCBXMOVALCHORALALJNSPLUSNEGCXMOVALMOVBXALJMPGOONPLUSMOVALMOVBXALGOONINCBXMOVSI10000CALLCHANGEMOVSI1000CALLCHANGEMOVSI100CALLCHANGEMOVSI10CALLCHANGEMOVALCLADDAL30HMOVBXALINCBXMOVALMOVBXALPOPSIPOPDXPOPBXPOPAX
8
fRETCONVENDP子程序名称CHANGE子程序功能统计CX中所包含权(在SI中)的个数;并把个数转换为ASCH码,存入缓冲区中;入口参数:CX;调用子程序:CHANGECONVPROCNEARPUSHAXPUSHBXPUSHDXPUSHSILEABXBUFMOVAL0DHMOVBXALINCBXMOVALCHORALALJNSPLUSNEGCXMOVALMOVBXALJMPGOONPLUSMOVALMOVBXALCHANGEENDP子程序名称:DISPLAY子程序功能:输出以结尾的一个字符串调用子程序:系统09号功能DISPLAYPROCNEARPUSHAXMOVDXOFFSETBUFMOVAH9INT21HPOPAXRETDISPLAYENDPCODEENDSENDSTART
9
f五编写程序,将输入的大写字母转换为小写字母。(20分)
DATASSEGMENTadb
好听全球资料 返回顶部