汇编语言菜鸟,急求大神们解答,不胜感激

编写并运行一个汇编语言程序,要求在首地址为Table的数组中存放10个带符号数,编写程序统计正数、负数和零的个数,并分别存入Gcount、Lcount和Zcount单元

3个回答

根据现在的问答规则,为了防止白白回答问题而被耍,所以只能是先采纳后回答。谢谢谅解。

讨厌伸手党
这么简单的作业,请思考后,有不会的地方在上来提问

qq_39056485
???biu 回复Debug_dodge: 我也这么觉得,谢谢
接近 2 年之前 回复
 ;将有符号数分组并分行显示(数据绝对值小于100)
data segment
    ARRAY dw 1,2,-1,3,4,-2,-3,4,5,-6  
    P_ARY dw 10 dup(20h)  ;正数
    N_ARY dw 10 dup(20h)  ;负数
    str1 db 'P_ARY = ' 
    p db 0,6 dup(20h)
    str2 db 'N_ARY = ' 
    n db 0,6 dup(20h),10,13,'$';用来存放负数个数
data ends
code segment
    assume cs:code,ds:data
start:
    mov ax,data
    mov ds,ax
    mov bx,offset ARRAY
    mov si,offset P_ARY
    mov di,offset N_ARY
    mov cx,10
    s:
        mov ax,[bx]
        Test ah,10000000b  ;相当于与,但不保存结果
        jz s0         ;跳到正数处理
        not ax    ;负数处理,求反加1得绝对值
        inc ax
        call get10   ;得到可显示10进制ASCII码
        mov [di],ax
        add di,2
        add n,1
        jmp next
    s0: call get10  ;正数直接   
        mov [si],ax
        add si,2
        add p,1
    next:   add bx,2
    loop s
    ;显示
    mov si,offset P_ARY
    mov di,offset N_ARY
    mov ah,0eh    ;中断调用功能参数
    mov cx,0
    mov cl,P  
    s1:
        mov al,[si]
        cmp al,30h
        jz gw1     ;不显示零
        int 10h
    gw1:    inc si
        mov al,[si]
        int 10h
        inc si
        mov al,20h
        int 10h
    loop s1
    mov al,10
    int 10h
    mov al,13
    int 10h
    mov cl,n
    s2:
        mov al,'-'
        int 10h
        mov al,[di]
        cmp al,30h
        jz gw2     ;不显示零
        int 10h
    gw2:    inc di
        mov al,[di]
        int 10h
        inc di
        mov al,20h
        int 10h
    loop s2
    mov al,10
    int 10h
    mov al,13
    int 10h

    add n,30h
    add p,30h
    mov ah,09h
    mov dx,offset str1
    int 21h   
    mov ah,4ch
    int 21h    
 get10 proc
    aam  ;BCD码调整,会将 al扩展 十位放到ah中,个位放到al中
    or ax,3030h  ;将数字转化成ascii码
    xchg al,ah ;逆序以便于显示al中是高位,ah是低位
    ret
 get10 endp   
code ends
end start
qq_39056485
???biu 回复caozhy: 流程图是这样的![图片说明](http://img.ask.csdn.net/upload/201711/30/1512022176_50445.png)
接近 2 年之前 回复
qq_39056485
???biu 回复caozhy: 这和我给的要求不一样啊
接近 2 年之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复???biu: 是的,ARRAY dw 1,2,-1,3,4,-2,-3,4,5,-6 换成你自己的。
接近 2 年之前 回复
qq_39056485
???biu 回复caozhy: 数组是自己随便定义的吗
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!