ZKX's LAB

汇编字符串反向输出原理 如何用汇编实现从键盘输入字符串并颠倒后输出

2021-03-22知识9

高分!紧急!汇编 输入字符串,去空格后反向输出 我运行的没有错啊,例如输入abcd efg,中间有3个空格,它会输出gfedcba修改后的代码全给你了,就算有错应该不是nospace的吧。输入字符串去空格后反向输出的程序model small386DATA SEGMENTbuf db 100,0,100 DUP(0)msg1 db 'Please input a string:',0DH,0Ah,'$'crlf db 0Dh,0Ah,'$'leng db 0DATA ENDSSTACK SEGMENTDB 64 DUP?STACK ENDSCODE SEGMENTassume cs:CODE,ds:DATA,es:DATA,ss:STACKSTART:mov ax,DATAmov ds,axmov es,axlea dx,msg1;输出提示文字mov ah,09hint 21hlea dx,bufmov ah,0ah;接受字符串int 21h;mov dx,offset crlfmov ah,09h;输出字符串中断int 21hcall countcall nospace;把这行去掉之后是可以实现反向输出的,当然不能 去空格lea dx,bufmov bl,leng;新字符串长度送到blmov bh,00hcmp bx,0000hjnz L1jz EXITL1:mov dl,buf+1[bx];把最后一位送到dlmov ah,02h;输出一个字符中断int 21hdec bx;倒着输出字符jnz l1EXIT:mov AH,4CHint 21Hcount:xor dx,dxxor cx,cxlea di,bufpush dimov al,0lop:cmp al,[di]je doneinc dlinc diloop lopdone:mov leng,dl;把数组长度存至lengpop diret。

C语言反向输出字符串 include<;string.h>;#include<;stdio.h>;main(){?char?a[80],c;int?i,b;gets(a);b=strlen(a);for(i=0;i;i+){?c=a[i];a[i]=a[b-1-i];a[b-1-i]=c;}?printf(\"%s\\n\",a);return。

注释一段简单汇编代码,实现将输入字符串反转输出的

汇编字符串反向输出原理 如何用汇编实现从键盘输入字符串并颠倒后输出

#汇编字符串反向输出原理

qrcode
访问手机版