题目内容:
回答题下面的8086/8088汇编语言程序中,主程序通过堆栈将有关信息传送给子程序STRLEN。在主程序的( ) 处填空,使程序能正常运行。
DSEGSEGMENT
ARRAYDB’Computer$’
NUMDW0
DSEGENDS
SSEGSEGMENTSTACK
DB256DUP(0)
SSEGENDS
CSEG1SEGMENT
ASSUMEDS:DSEG,SS:SSEG,CS:CSEG1
START:MOVAX,DSEG
MOVDS,AX
MOVAX,OFFSETARRAY
PUSHAX
CALL【6】
MOVNUM,AX
MOVAH,4CH
INT21H
CSEG1ENDS
CSEG2SEGMENT
ASSUMEDS:DSEG,SS:SSEG,CS:CSEG2
STRLENPROCFAR
PUSHBP
MOVBP,SP
PUSHSI
MOVSI,[BP+6]
NEXT:CMPBYTEPTR[SI],’$’
JZDONE;串尾吗?
INCSI
JMPNEXT
DONE:MOVAX,SI
SUBAX,[BP+6]
POPSI
POPBP
RET2
STRLENENDP
CSEG2ENDS
ENDSTART
参考答案:
答案解析: