汇编实验题~~~显示菱形

这篇博客介绍了一段使用汇编语言编写的代码,该代码用于在屏幕上显示一个菱形图案。通过一系列的条件判断和字符输出,实现了从空格到星号的交替打印,从而构成菱形的形状。
摘要由CSDN通过智能技术生成

codesg segment
    assume cs:codesg
start:
    mov bl,0
rotate:
    mov dl,13
    mov ah,2
    int 21h
    mov dl,10
    mov ah,2
    int 21h

    inc bl
    cmp bl,7
    jg  exit
    cmp bl,4
    jg  either
   
    mov bh,bl       ;we can't change the value of bl by 'mul' or 'add'
    add bh,bh       ;ch=2bl-1
    dec bh
    mov ch,bh

    mov bh,bl       ;cl=4-bl
    mov al,4
    sub al,bl
    mov cl,al

    jmp print1      ;print space whose ASCII is 20h

either:
    mov bh,bl       ;ch=15-2bl
    mov al,15
    add bh,bh
    sub al,bh
    mov ch,al

    mov bh,bl
    sub bh,4
    mov cl,bh

print1:
    cmp cl,0
    jle print2      ;print star whose ASCII is 2ah

    mov dl,20h
    mov ah,2
    int 21h

    dec cl
    jmp print1

print2:
    cmp ch,0
    jle rotate

    mov dl,2ah
    mov ah,2
    int 21h
    dec ch
    jmp print2

exit:
    mov ah,4ch
    int 21h
codesg ends
end start

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值