分离字数组ARRAY中的正,负数,把其中的正数复制到PDATA数组:负数复制到NDATA数组,并分别统计正、负数个数。
Assembly (x86)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
DATAS SEGMENT array dw 1,2,3,-4,5,-6,7,-8 DATAS ENDSext segment pdata dw 8 dup(?) ndata dw 8 dup(?) a db 30h b db 30hext endsCODES SEGMENT ASSUME CS:CODES,DS:DATAS,es:extSTART: MOV AX,DATAS MOV DS,AX mov ax,ext mov es,ax lea bx,array lea si,pdata lea di,ndata mov cx,8 T: mov ax,[bx] test ax,8000h jz P mov es:[di],ax add a,1 add di,2 jmp L P: mov es:[si],ax add b,1 add si,2 L:add bx,2 loop T mov dl, a mov ah,2 int 21h mov dl,20h mov ah,2 int 21h mov dl, b mov ah,2 int 21h MOV AH,4CH INT 21HCODES ENDSend start
![](http://www.omegaxyz.com/wp-content/uploads/2017/05/%E6%8D%95%E8%8E%B7-300x112.jpg)
|