| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 844 人关注过本帖
标题:求助!求助!求助!
只看楼主 加入收藏
jhtyolg20002
Rank: 1
等 级:新手上路
帖 子:66
专家分:6
注 册:2007-3-29
收藏
 问题点数:0 回复次数:1 
求助!求助!求助!
修改下面的代码,增加以下两个功能
搜索更多相关主题的帖子: 代码 
2007-12-18 20:19
jhtyolg20002
Rank: 1
等 级:新手上路
帖 子:66
专家分:6
注 册:2007-3-29
收藏
得分:0 
求助!求助!求助!
增加以下两个功能
1.能对任意数进行处理而不是仅限两位数。
2.将固定的数组改为动态的数组进行处理,提高通用性。

        DATA  SEGMENT
     ARRAY_M  DB        2,-5,34,28,10,-9,-56,20,-25,-23,-46,-8,-14,-10,81,82,-97,30,-47,-3

     ARRAY_P  DB        20   DUP(?)
     ARRAY_N  DB        20   DUP(?)
        PLUS  DB        ?
      NEGATV  DB        ?
        MSG0  DB        'ARRAY_M:2,-5,34,28,10,-9,-56,20,-25,-23,-46,-8,-14,-10,81,82,-97,30,-47,-3',0DH,0AH,'$'
        MSG1  DB        'ARRAY_P:','$'
        MSG2  DB        'ARRAY_N:','$'
        DATA  ENDS
        CODE  SEGMENT
              ASSUME    CS:CODE,DS:DATA
        MAIN  PROC      FAR
      START:
              MOV       AX,DATA
              MOV       DS,AX
              LEA       SI,ARRAY_M
              LEA       DI,ARRAY_P
              LEA       BX,ARRAY_N
              MOV       CX,20
       LOP1:  MOV       AX,0
              MOV       AL,[SI]
              TEST      AL,80H
              JZ        LOP2
              MOV       [BX],AL
              INC       NEGATV
              INC       BX
              JMP       AGAIN0
       LOP2:  MOV       [DI],AL
              INC       PLUS
              INC       DI
     AGAIN0:  INC       SI
              LOOP      LOP1
               
              MOV       CL,PLUS
              CMP       CL,0
              JE        LP1
              
              MOV       AH,9
              MOV       DX,OFFSET MSG0
              INT       21H
              
              MOV       BX,OFFSET ARRAY_P
              
              MOV       AH,9
              MOV       DX,OFFSET MSG1
              INT       21H
     AGAIN1:  MOV       DL,10
              MOV       AL,[BX]

              MOV       AH,0
              DIV       DL
              CMP       AL,0
              JE        TO1

              MOV       DH,AH
              ADD       AL,30H
              
              MOV       DL,AL
              MOV       AH,2
              INT       21H

              ADD       DH,30H
              MOV       DL,DH
              MOV       AH,2
              INT       21H

              MOV       DL,','
              MOV       AH,2
              INT       21H
              JMP       TO2
        TO1:  ADD       AH,30H
              MOV       DL,AH
              MOV       AH,2
              INT       21H

              MOV       DL,','
              MOV       AH,2
              INT       21H
        TO2:  INC       BX
              DEC       CL
              JNE       AGAIN1
              CALL      ENTER
        LP1:  MOV       CL,NEGATV
              CMP       CL,0
              JE        LP2

              MOV       BX,OFFSET ARRAY_N
              MOV       AH,9
              MOV       DX,OFFSET MSG2
              INT       21H
     AGAIN2:  MOV       DL,'-'
              MOV       AH,2
              INT       21H

              MOV       DL,10
              MOV       AL,[BX]
              MOV       AH,0FFH
              NOT       AX
              ADD       AX,1
              DIV       DL
              CMP       AL,0
              JE        TO3
              
              MOV       DH,AH
              ADD       AL,30H
              MOV       DL,AL
              MOV       AH,2
              INT       21H

              ADD       DH,30H
              MOV       DL,DH
              MOV       AH,2
              INT       21H

              MOV       DL,','
              MOV       AH,2
              INT       21H
              JMP       TO4
        TO3:  ADD       AH,30H
              MOV       DL,AH
              MOV       AH,2
              INT       21H

              MOV       DL,','
              MOV       AH,2
              INT       21H
        TO4:  INC       BX
              DEC       CL
              JNE       AGAIN2
        LP2:  MOV       AH,4CH
              INT       21H
              
              ENTER     PROC  NEAR
              MOV       DL,13
              MOV       AH,2
              INT       21H

              MOV       DL,10
              MOV       AH,2
              INT       21H
              RET
              ENTER     ENDP

        MAIN  ENDP
              
        CODE  ENDS
              END       START
2007-12-18 20:21
快速回复:求助!求助!求助!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020132 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved