帮忙加工!急用! 谢谢!
(用汇编)编写一个程序,将一个包含有20个有符号数据的数组arrayM分成两个数组:正数数组arrayP和负数数组arrayN,并分别把这两个数组中的数据个数显示出来.谢谢大家了! 尽快!
DATA SEGMENT
NUM DB 1,2,...,20 ;这个你随便写20个字节的数据
P DB 20 DUP(?) ;正数组
PNUM DB 0 ;正计数
N DB 20 DUP(?) ;负数组
NNUM DB 0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
MAIN PROC FAR
START: PUSH DS
MOV AX,0
PUSH AX
MOV AX,DATA
MOV DS,AX ;初始化完毕
MOV BX,0
MOV SI,BX
MOV DI,BX
MOV CX,20 ;设置相关参数
LOP1: MOV AL,NUM [BX] ;取原始数组元素
CMP AL,0
JGE P1 ;为正则转P1
MOV N [DI],AL
INC DI
INC NNUM ;负数组增加,计数变化
JMP NEXT
P1: MOV P [SI],AL
INC SI ;正数组增加,计数变化
INC PNUM
NEXT: INC BX ;原始数组指针偏移
LOOP LOP1 ;循环20次--CX
RET ;结束
MAIN ENDP
CODE ENDS
END START