北京理工大学汇编上机试题和代码(7)

2018-12-29 17:54

JA JINGWEI3 JMP NEXT JINGWEI3:

MOV OUT3[9],'0' MOV OUT3[8],'1' NEXT:

LOOP SHURU LEA DX,OUT1 MOV AH,09H INT 21H

MOV AH,4CH INT 21H CODES ENDS END START

20. 键盘输入下列两组十进制数,求其和,并将结果显示在屏幕上 35789418 46531425 DATA SEGMENT BUF1 DB 0FFH DB ? DB 0FFH DUP(?) BUF2 DB 0FFH DB ? DB 0FFH DUP(?) TISHI1 DB 'PLEASE INPUT FIRST NUMBER:',0DH,0AH,'$' TISHI2 DB 0DH,0AH,'PLEASE INPUT SECOND NUMBER:',0DH,0AH,'$' STROUT DB 0DH,0AH,9 DUP('0'),'$' DATA ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA DX,TISHI1 MOV AH,09H INT 21H CALL INPUT1 LEA DX,TISHI2 MOV AH,09H INT 21H CALL INPUT2 LEA SI,BUF1[2]

LEA DI,BUF2[2] MOV CX,8 AGAIN: SUB BYTE PTR[SI],30H SUB BYTE PTR[DI],30H INC SI INC DI LOOP AGAIN LEA SI,BUF1[9] LEA DI,BUF2[9] LEA BX,STROUT[10] MOV CX,8 CLC QIUHE: MOV AL,[SI] ADC AL,[DI] CLC CMP AL,9 JA CARRY ADD BYTE PTR[BX],AL JMP NEXT CARRY: SUB AL,10 ADD BYTE PTR[BX],AL STC NEXT: DEC SI DEC DI DEC BX LOOP QIUHE ADC BYTE PTR[BX],0 LEA DX,STROUT MOV AH,09H INT 21H MOV AH,4CH INT 21H INPUT1: LEA DX,BUF1 MOV AH,0AH INT 21H RET INPUT2: LEA DX,BUF2 MOV AH,0AH

INT 21H RET CODE ENDS END START

21.键盘输入一串二进制数1ah ,7ch,0bah,3ah,45h,63h求其和,并将结果显示在屏幕上。 DATAS SEGMENT SUM DW 0 DATAS ENDS

STACKS SEGMENT

;此处输入堆栈段代码 STACKS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATAS,SS:STACKS START:

MOV AX,DATAS MOV DS,AX XIAYIGE:

MOV BX,0 XIAYIWEI:

MOV AH,01H INT 21H CMP AL,'H' JZ NEXT CMP AL,0DH JZ SHUCHU CMP AL,'9' JA ZIMU SUB AL,30H JMP LEIJIA ZIMU:

SUB AL,37H LEIJIA:

MOV CL,16 XOR AH,AH XCHG AX,BX MUL CL ADD AX,BX XCHG AX,BX JMP XIAYIWEI NEXT:

MOV DL,0AH MOV AH,02H INT 21H

MOV DL,0DH MOV AH,02H INT 21H CMP BX,80H JAE FUSHU JMP QIUHE FUSHU: NEG BL LEA SI,SUM XOR BH,BH SUB [SI],BX JMP XIAYIGE QIUHE:

LEA SI,SUM XOR BH,BH ADD BX,[SI] MOV [SI],BX JMP XIAYIGE SHUCHU:

LEA SI,SUM MOV BX,[SI] MOV CH,4 CONTINUE: MOV CL,4 ROL BX,CL MOV AL,BL AND AL,0FH ADD AL,30H CMP AL,3AH JAE ZIMU1 JMP SHUCHU1 ZIMU1:

ADD AL,7 SHUCHU1:

MOV DL,AL MOV AH,02H INT 21H DEC CH CMP CH,0 JNZ CONTINUE MOV AH,4CH

INT 21H CODES ENDS END START

22.从键盘输入一串可显示字符(以回车符结束),

并按字母、数字、空格分类计数,然后显示出这三类统计的结果。 DATAS SEGMENT BUF DB 100 DB ?

DB 100 DUP(?)

KONGGE DB 'KONGGE=00',0AH,0DH SHUZI DB 'SHUZI=00',0AH,0DH ZIMU DB 'ZIMU=00$' DATAS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATAS START:

MOV AX,DATAS MOV DS,AX LEA DX,BUF MOV AH,0AH INT 21H

MOV DL,0AH MOV AH,02H INT 21H

MOV DL,0DH MOV AH,02H INT 21H

LEA SI,BUF+2 MOV CL,BUF+1 AGAIN:

MOV AL,[SI] CMP AL,' ' JZ KONGGE1 CMP AL,'0' JB NEXT CMP AL,'9' JBE SHUZI1 CMP AL,'A' JB NEXT CMP AL,'Z' JBE ZIMU1 CMP AL,'a'


北京理工大学汇编上机试题和代码(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:长征知识竞赛题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: