内容发布更新时间 : 2025/7/27 23:36:11星期一 下面是文章的全部内容请认真阅读。
CODE ENDS END START
9. 内存中以FIRST和SECOND开始的单元中分别存放着两个16位组合的十进制(BCD码)数,低位在前。编程序求这两个数的组合的十进制和,并存到以THIRD开始的单元。 答:
DATA SEGMENT
FIRST DD 34341212H SECOND DD 78785656H THIRD DB ?,?,?,?
DATA ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA START:
MOV AX,DATA
MOV DS,AX LEA SI,FIRST LEA DI,SECOND LEA BX,THIRD
MOV CX,4 CLC AGAIN:
MOV AL,BYTE PTR[SI]
MOV DL,BYTE PTR[DI] ADC AL,DL DAA
MOV BYTE PTR[BX],AL INC SI INC DI INC BX
LOOP AGAIN
JC AA
MOV BYTE PTR[BX],0 JMP EXIT AA:
MOV BYTE PTR[BX],1
EXIT: MOV AH,4CH INT 21H CODE ENDS END START
10. 编写一段程序,接收从键盘输入的10个数,输入回车符表示结束,然后将这些数加密后存于BUFF缓冲区中。加密表如下:
输入数字: 0,1,2,3,4,5,6,7,8,9; 密码数字: 7,5,9,1,3,6,8,0,2,4。 答:
DATA SEGMENT
MITAB DB '7591368024' CONT EQU $-MITAB BUFF DB 10 DUP (?),'$' YUANWEN DB 10 DUP (?),'$' DATA
ENDS
CODE SEGMENT
ASSUME CS∶CODE,DS∶DATA START: MOV AX,DATA MOV DS,AX MOV SI,0 MOV CX,CONT INPUT: MOV
AH,1
INT 21H CMP AL,13 JZ EXIT
AND
AL,0FH
MOV YUANWEN[SI] ,AL
INC SI LOOP INPUT
EXIT : LEA
BX,MITAB
MOV