找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1742|回复: 1
收起左侧

单片机加法运算为什么五个字节加完了,才根据进位标志,跳转?

[复制链接]
ID:189772 发表于 2018-4-16 16:58 | 显示全部楼层 |阅读模式
10黑币
       先上图,

流程

流程
回复

使用道具 举报

ID:189772 发表于 2018-4-16 16:58 | 显示全部楼层
DATA  SEGMENT
    DATA1   DB   34H,35H,39H,38H,36H,' '  
    DATA2   DB     37H,34H,33H,36H,32H,' '  
DATA  ENDS
CODE  SEGMENT
     MAIN  PROC  FAR
     ASSUME  CS:CODE,DS:DATA
     START:  MOV  AX,DATA
       MOV  DS,AX
      LEA    SI,DATA1      
      CALL  DISPLAY        
      CALL  CRLF        
      LEA    SI,DATA2
      CALL  DISPLAY        
      CALL  CRLF        
      LEA    DI,DATA1
      MOV  AX,0                        
      MOV  BX,0                          
      MOV  CL,05H        
     ADDS: MOV  AL,[SI]                  
      SUB    AL,30H                        
      ADD  AL,BL                              
      MOV  BL,[DI]                        
      SUB    BL,30H                        
      ADD  AL,BL                        
      ADD  AL,30H                        
      CMP  AL,3AH                        
      JA    SUBA      
      JB    NSUBA                        
     SUBA:  SUB    AL,0AH        
               MOV  BL,01H                        
      JMP    CONTINUE                        
    NSUBA:  MOV  BL,00H                        
  CONTINUE:MOV  [DI],AL         
        INC    DI                        
        INC    SI                        
      LOOP  ADDS                        
      JC    SHUCHU                        
      JNC    SHUCHU2                        
   SHUCHU2: MOV  AL,31H        
   JMP    CONTINUE2                        
    SHUCHU:MOV  AL,30H                    
CONTINUE2:MOV  [DI],AL                        
       LEA    SI,DATA1   
           CALL  DISPLAY      
           MOV  AX,4C00H      
           INT  21H                        
MAIN    ENDP  
                     
CRLF    PROC  NEAR        
      MOV  DL,0DH                        
      MOV  AH,02H   
          INT    21H     
          MOV  DL,0AH                        
      MOV  AH,02H      
          INT    21H                        
      RET                                               
CRLF    ENDP
DISPLAY    PROC    NEAR         
         MOV  BX,0006H                           
     DSL:  MOV  DL,[SI+BX-1]      
           MOV  AH,02                                               
           INT    21H         
           DEC  BX           
           JNZ    DSL                                                  
           RET                                                         
DISPLAY    ENDP
CODE  ENDS
    END  START
为什么五个字节加完了,才根据进位标志,跳转?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表