temp.asm

来自「大学微机原理课程设计之一-------交通灯 源码。比较作孽」· 汇编 代码 · 共 1,518 行 · 第 1/4 页

ASM
1,518
字号
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,GREEN
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       LEFT_COL
              POP       CX
              LOOP      R_W1
       R_W1:  POP       BX
              MOV       LEFT_COL,BL
              POP       BX
              MOV       LEFT_ROW ,BL
              RET
       WEST1  ENDP
 ;*************************************  EAST1
       EAST1  PROC      NEAR
              MOV       BL,RIGHT_ROW
              PUSH      BX
              MOV       BL,RIGHT_COL
              PUSH      BX
     EAST_1:  MOV       AH,02H
              MOV       DH,RIGHT_ROW
              MOV       DL,RIGHT_COL
              MOV       BH,00H
              INT       10H
              CMP       CX,03H
              JZ        EAST_1_A1
              CMP       CX,02H
              JZ        EAST_1_A3
              CMP       CX,01H
              JZ        EAST_1_A2
  EAST_1_A1:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHITE
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       RIGHT_COL
              POP       CX
              LOOP      EAST_1
  EAST_1_A3:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHIT
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       RIGHT_COL
              POP       CX
              LOOP      EAST_1
  EAST_1_A2:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,GREEN
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       RIGHT_COL
              POP       CX
              LOOP      R_E1
       R_E1:  POP       BX
              MOV       RIGHT_COL,BL
              POP       BX
              MOV       RIGHT_ROW ,BL
              RET
       EAST1  ENDP
        MOD1  ENDP
;*********************************************
        MOD2  PROC      NEAR
              MOV       CX,03H
              CALL      NORTH2
              MOV       CX,03H
              CALL      SOUTH2
              MOV       CX,03H
              CALL      WEST2
              MOV       CX,03H
              CALL      EAST2
              CALL      DELAY2
              RET
        ;*************************************  灯颜色和位置设置1
      NORTH2  PROC      NEAR
              MOV       BL,UPPER_ROW
              PUSH      BX
              MOV       BL,UPPER_COL
              PUSH      BX
    NORTH_2:  MOV       AH,02H
              MOV       DH,UPPER_ROW
              MOV       DL,UPPER_COL
              MOV       BH,00H
              INT       10H
              CMP       CX,03H
              JZ        NORTH_2_A1
              CMP       CX,02H
              JZ        NORTH_2_A3
              CMP       CX,01H
              JZ        NORTH_2_A2
 NORTH_2_A1:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHITE
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       UPPER_COL
              POP       CX
              LOOP      NORTH_2
 NORTH_2_A3:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHIT
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       UPPER_COL
              POP       CX
              LOOP      NORTH_2
 NORTH_2_A2:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,GREEN
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       UPPER_COL
              POP       CX
              LOOP      R_N2
       R_N2:  POP       BX
              MOV       UPPER_COL ,BL
              POP       BX
              MOV       UPPER_ROW ,BL
              RET
      NORTH2  ENDP
   ;*************************************  灯颜色和位置设置1
      SOUTH2  PROC      NEAR
              MOV       BL,UNDER_ROW
              PUSH      BX
              MOV       BL,UNDER_COL
              PUSH      BX
    SOUTH_2:  MOV       AH,02H
              MOV       DH,UNDER_ROW
              MOV       DL,UNDER_COL
              MOV       BH,00H
              INT       10H
              CMP       CX,03H
              JZ        SOUTH_2_A1
              CMP       CX,02H
              JZ        SOUTH_2_A3
              CMP       CX,01H
              JZ        SOUTH_2_A2
 SOUTH_2_A1:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHITE
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       UNDER_COL
              POP       CX
              LOOP      SOUTH_2
 SOUTH_2_A3:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHIT
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       UNDER_COL
              POP       CX
              LOOP      SOUTH_2
 SOUTH_2_A2:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,GREEN
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       UNDER_COL
              POP       CX
              LOOP      R_S2
       R_S2:  POP       BX
              MOV       UNDER_COL ,BL
              POP       BX
              MOV       UNDER_ROW  ,BL
              RET
      SOUTH2  ENDP
 ;*************************************  WEST 2
       WEST2  PROC      NEAR
              MOV       BL,LEFT_ROW
              PUSH      BX
              MOV       BL,LEFT_COL
              PUSH      BX
     WEST_2:  MOV       AH,02H
              MOV       DH,LEFT_ROW
              MOV       DL,LEFT_COL
              MOV       BH,00H
              INT       10H
              CMP       CX,03H
              JZ        WEST_2_A1
              CMP       CX,02H
              JZ        WEST_2_A3
              CMP       CX,01H
              JZ        WEST_2_A2
  WEST_2_A1:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,RED
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       LEFT_COL
              POP       CX
              LOOP      WEST_2
  WEST_2_A3:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHIT
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       LEFT_COL
              POP       CX
              LOOP      WEST_2
  WEST_2_A2:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHITE
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       LEFT_COL
              POP       CX
              LOOP      R_W2
       R_W2:  POP       BX
              MOV       LEFT_COL,BL
              POP       BX
              MOV       LEFT_ROW,BL
              RET
       WEST2  ENDP
 ;*************************************  EAST 2
       EAST2  PROC      NEAR
              MOV       BL ,RIGHT_ROW
              PUSH      BX
              MOV       BL,RIGHT_COL
              PUSH      BX
     EAST_2:  MOV       AH,02H
              MOV       DH,RIGHT_ROW
              MOV       DL,RIGHT_COL
              MOV       BH,00H
              INT       10H
              CMP       CX,03H
              JZ        EAST_2_A1
              CMP       CX,02H
              JZ        EAST_2_A3
              CMP       CX,01H
              JZ        EAST_2_A2
  EAST_2_A1:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,RED
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       RIGHT_COL
              POP       CX
              LOOP      EAST_2
  EAST_2_A3:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHIT
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       RIGHT_COL
              POP       CX
              LOOP      EAST_2
  EAST_2_A2:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHITE
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       RIGHT_COL
              POP       CX
              LOOP      R_E2
       R_E2:  POP       BX
              MOV       RIGHT_COL,BL
              POP       BX
              MOV       RIGHT_ROW ,BL
              RET
       EAST2  ENDP
        MOD2  ENDP
;*********************************************
        MOD3  PROC      NEAR
              MOV       CX,03H
              CALL      NORTH3
              MOV       CX,03H
              CALL      SOUTH3
              MOV       CX,03H
              CALL      WEST3
              MOV       CX,03H
              CALL      EAST3
              CALL      DELAY3
              RET
        ;*************************************  NORTH3
      NORTH3  PROC      NEAR
              MOV       BL,UPPER_ROW
              PUSH      BX
              MOV       BL,UPPER_COL
              PUSH      BX
    NORTH_3:  MOV       AH,02H
              MOV       DH,UPPER_ROW
              MOV       DL,UPPER_COL
              MOV       BH,00H
              INT       10H
              CMP       CX,03H
              JZ        NORTH_3_A1
              CMP       CX,02H
              JZ        NORTH_3_A3
              CMP       CX,01H
              JZ        NORTH_3_A2
 NORTH_3_A1:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,WHITE
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       UPPER_COL
              POP       CX
              LOOP      NORTH_3
 NORTH_3_A3:  PUSH      CX
              MOV       DI,SEG DAT2
              MOV       ES,DI
              MOV       BP,OFFSET DAT2
              MOV       AL,00H
              MOV       BL,YELLOW
              MOV       AH,13H
              MOV       CX,01H
              INT       10H
              INC       UPPER_COL
              POP       CX
              LOOP      NORTH_3
 NORTH_3_A2:  PUSH      CX
              MOV       DI,SEG DAT2

⌨️ 快捷键说明

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