王爽老师汇编语言第四版实验11菜鸟笔记

本文展示了一个汇编语言程序,主要涉及在处理字符串时对地址的操作,如使用add指令和byteptr关键字,以及jcxz指令的条件跳转。程序从数据段加载地址,比较字符并进行适当变换,然后在CX不为0时继续循环。
摘要由CSDN通过智能技术生成

其实做了半天,其中遇到了好多错误,不过发现add指令运算时可以直接对地址进行操作,不过,要加上byte ptr哈我就是没有加。改了好久。

还有就是要注意的是jcxz指令是当cx=0时才跳转,不等于零继续向下

assume cs:codesg

datasg segment
    db "Beginner's All-purpose Symbolic Instruction Code.",0
datasg ends
codesg segment
    begin:  mov ax,datasg
            mov ds,ax
            mov si,0
            call letterc

            mov ax,4C00h
            int 21h

letterc: 
            push ax
            push bx
            push ds
            push si
            push cx
            mov al,97
            mov bl,122
            mov cx,0

          
           

 X:         cmp  ds:[si],al
            jb N

            cmp ds:[si],bl
            ja N

           ; sub ds:[si],32
        ;    mov al,ds:[si]
        ;    and al,11011111b
        ;    mov ds:[si],al
            and byte ptr ds:[si],11011111b


        N:  inc si
            mov cl,ds:[si]
            cmp  cl,0
            jne X
           
           pop cx
           pop si
           pop ds
           pop bx
           pop ax

           ret


codesg ends
end begin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

y6y6y666

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值