masm汇编,接上一篇 在屏幕中央画一个逐渐膨胀的实心圆

这篇博客介绍了如何使用汇编语言在屏幕中央绘制一个逐渐膨胀的实心圆,提供了修改后的代码供读者参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

要求:在屏幕中央画一个逐渐膨胀的实心圆。

已经改好的,留给未来的童鞋们参考哈


SCREEN  MACRO
        MOV AX,12H
        INT 10H
        MOV AX,0BH
        MOV BX,0
        INT 10H
ENDM
;------------------------------------------
COMPUTE MACRO
        MOV AX,[SI]
        MUL RR
        DIV KK
        MOV Y_COORD,AX
        MOV AX,[DI]
        MUL RR
        DIV KK
        MOV X_COORD,AX
ENDM
;------------------------------------------
L    MACRO
        MOV AX,X_COORD
        MOV CX,Y_COORD
        MOV X_COORD1,AX
        MOV Y_COORD1,CX
    ADD Y_COORD1,OY
        ADD X_COORD1,OX
        MOV AH,0CH
        MOV AL,COLOR
        MOV BH,0
        MOV CX,X_COORD1
        MOV DX,Y_COORD1
        INT 10H
ENDM
WRITE   MACRO
    L
        NEG X_COORD
    L
        NEG Y_COORD
    L
        NEG X_COORD
    L
ENDM
;--------------------------------------------
DATA    SEGMENT
SINE    DW   00,02,03,05,07,09,11,12,14,16
        DW   17,19,21,23,24,26,28,29,31,33
        DW   34,36,37,39,41,42,44,45,47,49
        DW   50,52,53,54,56,57,59,60,62,63
        DW   64,66,67,68,69,71,72,73,74,75
        DW   77,78,79,80,81,82,83,84,85,86
        DW   87,87,88,89,90,91,91,92,93,93
        DW   94,95,95,96,96,97,97,97,98,98
        DW   99,99,99,99,99,100,100,100,100
        DW   100,100
Y_COORD    DW   ?
X_COORD    DW   ?
Y_COORD1 DW  ?
X_COORD1 DW  ?
OY    EQU  240
OX    EQU  320
RR      DW   0
COLOR   DB   100
KK    DW   100
COUNT   DB   90
DATA    ENDS
CODE    SEGMENT
    ASSUME CS:CODE,DS:DATA
BEG:
    MOV AX,DATA
    MOV DS,AX
        SCREEN
AGA1:    MOV DI,OFFSET SINE+90*2
    MOV SI,OFFSET SINE
    INC RR
        MOV COUNT,90
AGA:
    COMPUTE
    WRITE
    ADD SI,2
    SUB DI,2
    DEC COUNT
        JZ L8
        JMP AGA
L8:     CMP RR,199
        JA WAIT_IN
        JMP AGA1
WAIT_IN:
    MOV AH,1
    INT 21H
        MOV AX,2
    INT 10H
    MOV AH,4CH
    INT 21H
CODE    ENDS
    END BEG


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值