题目
31.已知数组A包含20个互不相等的字型整数,数组B包含30个互不相等的字型整数,试编制一程序把既在A中又在B中出现的数存放于数组C中。
思路
一位一位的来
代码
DATAS SEGMENT
;此处输入数据段代码
BUFa DW 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20
BUFb DW 21,22,23,24,25,26,27,28,29,30,1,2,3,4,5,6,7,8,9,10,31,32,33,34,35,36,37,38,39,40
BUFc DW 20 DUP(?)
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;此处输入代码段代码
MOV SI,0
MOV DI,0
MOV BP,0
COM:
CMP DI,60;看是否到达A数组的最后一位
JE L
MOV BX,BUFa[SI];比较
MOV CX,BUFb[DI]
ADD DI,2
CMP BX,CX
JE Equal
JNE COM
Equal:
MOV BUFc[BP],BX;存储数据
ADD BP,2
JMP COM
L:
CMP SI,38;看是否到达B数组的最后一位
JE Exit
ADD SI,2
MOV DI,0
JMP COM
Exit:
MOV AH,4CH
INT 21H
CODES ENDS
END START