回 帖 发 新 帖 刷新版面

主题:[讨论]另一道高分奖励

[b]以知N个带符号16位数b1,b2.....bn已存放在从B开始的存储区中,现在要求将其中的正数和零抹掉,而把留下的负数连续地重新存放在从B开始的存储区中,并把负数的个数存放在变量BB中。[/b]

回复列表 (共1个回复)

沙发

DATA SEGMENT
     B DW .......
     BB DB ?
DATA ENDS
CODE SEGMENT
     ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
       MOV DS,AX
       MOV DI,OFFSET B
       MOV SI,OFFSET B
       MOV BH,00H
       MOV CX,09H    ;09H是N
NEXT:  MOV AX,[DI]
       INC DI
       TEST AX,8000H
       JNZ FUSHU
       LOOP NEXT
FUSHU: INC BH
       MOV [SI],AX
       INC SI
       LOOP NEXT
       MOV BB,BH
CODE   ENDS
       END START

我来回复

您尚未登录,请登录后再回复。点此登录或注册