⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 exp_10_1.asm

📁 单片机硬件实验代码
💻 ASM
字号:
              ORG       0000H
              
       
              LJMP      START
              ORG       0030H
      START:  MOV       30H,#00000001B    ;
              MOV       31H,#00000010B
              MOV       32H,#00000100B
              MOV       33H,#00001011B
              MOV       34H,#00000111B
              MOV       35H,#00000011B
              MOV       36H,#00010011B
              MOV       37H,#00000011B
              MOV       38H,#10001011B
              MOV       39H,#10001111B
              MOV       3AH,#10000010B
              MOV       3BH,#10001011B
              MOV       3CH,#10000011B
              MOV       3DH,#10001011B
              MOV       3EH,#10000111B
              MOV       3FH,#10100011B  
              
              MOV       R0,#30H
              MOV       R1,#40H
              MOV       R7,#10H
      LOOP:   MOV       A,@R0               ;排序数据存放到40h开始的地址
              MOV       @R1,A
              INC       R0
              INC       R1
              DJNZ      R7,LOOP
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;    后面数据(21h)    大小关系      前面数据(20h)      借位标志C      是否交换     ;;;         
;;;     0*******          <           0********            1            否        ;;;
;;;     0*******          >           1********            1            是        ;;;
;;;     1*******          >           1********            1            是        ;;;
;;;     ----------------------------------------------------------------------    ;;;
;;;     0*******          >           0********            0            是        ;;;
;;;     1*******          <           0********            0            否        ;;;
;;;     1*******          <           1********            0            否        ;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
       SORT:  MOV       R0,#40H
              MOV       R7,#0FH
              CLR       22H.7                 ;排序过程中是否有交换标志
        _A:   MOV       A,@R0
              MOV       20H,A                 ;前面数据暂存在20H中
              INC       R0
              MOV       A,@R0
              MOV       21H,A                 ;后面数据暂存在21H中
              CLR       C
              CJNE      A,20H,NEXT            
              SJMP      UNCHG                 ;相等
      NEXT:   JC        _B         
              MOV       A,21H
              JB        ACC.7,UNCHG
              JMP       CHG
          _B: MOV       A,20H
              JB        ACC.7,CHG
              JMP       UNCHG
         CHG: MOV       @R0,20H
              DEC       R0
              MOV       @R0,21H
              INC       R0
              SETB      22H.7
       UNCHG: DJNZ      R7,_A
              ;MOV       R0,#40H
              JB        22H.7,SORT           
                
       SJMP   $
       
             END         
                       

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -