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

📄 4.asm

📁 1. 设计要求: 1.彩色界面
💻 ASM
字号:
;FILENAME:4.ASM
.486
      SCREEN  MACRO
              MOV       AX,12H
              INT       10H
              MOV       AH,0BH
              MOV       BX,7
              INT       10H
              ENDM
       WRITE  MACRO     XFLAG,YFLAG
              MOV       AH,0CH
              MOV       BH,0
              MOV       AL,COLOR
              MOV       CH,0
              MOV       CL,A
              IF        XFLAG  EQ 0
              NEG       CX
              ENDIF
              ADD       CX,XX
              MOV       DX,H
              IF        YFLAG  EQ 0
              NEG       DX
              ENDIF
              ADD       DX,YY
              INT       10H
              MOV       AH,86H
              MOV       CX,0
              MOV       DX,60000
              INT       15H
              ENDM
        DATA  SEGMENT   USE16
           R  DB        ?
          R2  DW        ?
           A  DB        ?
          A2  DW        ?
           H  DW        ?
          YY  EQU       240
          XX  EQU       320
       COLOR  EQU       2
       COUNT  DB        ?
        MESG  DB        'please strike any key!',0DH,0AH,'$'
        DATA  ENDS
        CODE  SEGMENT   USE16
              ASSUME    CS: CODE,DS: DATA
        BEG:  MOV       AX,DATA
              MOV       DS,AX
              MOV       R,0
              MOV       COUNT,120
              SCREEN
       LAST:  MOV       A,0
       AGA1:  CALL      SQRT        ;画出第二象限上圆弧的点
              WRITE     0,0
              INC       A
              MOV       AL,R
              CMP       A,AL
              JNA       AGA1
              MOV       A,AL
       AGA2:  CALL      SQRT        ;第三象限的
              WRITE     0,1
              DEC       A
              CMP       A,0
              JGE       AGA2
              MOV       A,0
       AGA3:  CALL      SQRT        ;第四象限的
              WRITE     1,1
              INC       A
              MOV       AL,R
              CMP       A,AL
              JNA       AGA3
              MOV       A,AL
       AGA4:  CALL      SQRT        ;第一象限的,总体是按顺时钟方式
              WRITE     1,0
              DEC       A
              CMP       A,0
              JGE       AGA4
              INC       R
              DEC       COUNT
              JNZ       LAST        ;增大半径,再画圆
              MOV       AH,9H
              MOV       DX,OFFSET MESG
              INT       21H
              MOV       AH,1H
              INT       21H
              MOV       AX,2
              INT       10H
              MOV       AH,4CH
              INT       21H
        SQRT  PROC                  ;计算行坐标
              MOV       AL,A
              MUL       AL
              MOV       A2,AX
              MOV       AL,R
              MUL       AL
              SUB       AX,A2
              MOV       CX,0
      LAST1:  MOV       DX,CX
              ADD       DX,DX
              INC       DX
              SUB       AX,DX
              JC        EXIT1
              INC       CX
              JMP       LAST1
      EXIT1:  MOV       H,CX        ;计算结果保存在H单元内
              RET
        SQRT  ENDP
        CODE  ENDS
              END       BEG

⌨️ 快捷键说明

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