635924705 发表于 2021-2-6 20:18:30

汇编语言_实验6

本帖最后由 635924705 于 2021-2-7 20:03 编辑

【学习交流,共同进步】
assume cs:code, ss:stack, ds:data

stack segment
    dw 0,0,0,0,0,0,0,0
stack ends

data segment
    db '1. display      '
        db '2. brows      '
        db '3. replace      '
        db '4. modify       '
data ends       
       
code segment
start:mov ax,data
      mov ds,ax      ;把数据段的段地址给ds
               
                mov bx,0       ;把bx看成行,每加16就是下一行
               
                mov cx,4       ;4行所以外层循环4次
        s1: push cx      ;外层循环次数入栈
                mov si,3         ;字母从第3个字节开始
               
          mov cx,4          ;前4个字母,所以内层循环4次
        s2: mov al,   ;用寄存器al操作,注意这里是字节操作,不要用ax
          and al,11011111b   ;变大写
                mov ,al
          inc si
          loop s2
               
                add bx,16         ;bx加16到下一行
                pop cx            ;外层循环次数出栈
                loop s1
             
       
      mov ax,4c00h
      int 21h
       
code ends

end start

yourdaddy- 发表于 2021-2-7 16:16:50

不是每个单词的前四个字母吗?

635924705 发表于 2021-2-7 19:59:01

yourdaddy- 发表于 2021-2-7 16:16
不是每个单词的前四个字母吗?

我去,感谢提醒,我看叉了,嘿嘿,马上改回来{:10_254:}
页: [1]
查看完整版本: 汇编语言_实验6