汇编语言 将字符串中大写转换为小写 小写转换为大写 数字不变

datasegment

    ass db 250 dup('?')

    data ends

codesegment

    assume cs:code,ds:data

    start:

    mov ax,data

    mov ds,ax

   

    lea dx,ass

    mov ah,0AH

    int 21h

    mov cl,ass+1

    mov di,-1

   

lk: incdi

    cmp ass[di],30H

    jc zxc

    cmp ass[di],39H

    jbe num

   

    cmp ass[di],41H

    jc zxc

    cmp ass[di],5AH

    jbe small

   

    cmp ass[di],61H

    jc zxc

    cmp ass[di],7AH

    jnbe zxc

   

big:

    mov bl,ass[di]

    sub bl,20H

    jmp output

 

small:

    mov bl,ass[di]

    add bl,20H

    jmp output

   

num:

    mov bl,ass[di]

    add bl,0H

    jmp output

   

output:

    mov dl,bl

    mov ah,02H

    int 21h

zxc:

    loop lk

   

exit:

    mov ah,4ch

    int 21H

    

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

StriveZs

用爱发电

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值