汇编--21H里头0ah功能的使用示例

本文介绍了一个使用汇编语言实现的简单程序,该程序提示用户输入一个不超过250字符的字符串,并将其显示两次,一次按输入顺序,另一次逆序输出。文章通过具体的代码段展示了如何在汇编语言中进行基本的字符串操作。

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

stacker segment stack
    dw 250h dup(?)
top label word
stacker ends

data segment
str1 db 'please input a string no more than 250 characters',0dh,0ah,24h
str2 db 'the string you have input is',0dh,0ah,24h
str3 db 'the reserve output is',0dh,0ah,24h
buffer db 250
       db ?
       db 250 dup(?)
data ends

code segment
   assume cs:code,ds:data,ss:stacker
start proc near

   mov ax,stacker
   mov ss,ax
   lea sp,top   

   mov ax,data
   mov ds,ax

   lea dx,str1
   mov ah,09h
   int 21h

   lea dx,buffer
   mov ah,0ah
   int 21h

   mov dl,0ah
   mov ah,02h
   int 21h

   lea dx,str2
   mov ah,09h
   int 21h

   mov si,1
   mov bl,buffer[si]
   mov cl,1
   cmp bl,cl
   jb L2
   
L1:
   mov si,cx
   add si,1
   mov dl,buffer[si]
   mov ah,02h
   int 21h
   push dl
   inc cl
   cmp bl,cl
   jae L1

   mov dl,0ah
   mov ah,02h
   int 21h

   lea dx,str3
   mov ah,09h
   int 21h

   mov cl,1
   cmp bl,cl
   jb L2

L3:pop dl
   mov ah,02h
   int 21h
   inc cl
   cmp bl,cl
   jae L3


L2:mov ah,4ch
   int 21h
   
start endp
code ends
   end start

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值