跪求:用汇编语言写 输入一个字符串,以回车符结束,并去掉其内的空格,然后输出。 万分感谢!!!

如题所述

第1个回答  2011-05-18
data segment
inf1 db 0dh,0ah,'input string: $'
inf2 db 0dh,0ah,'the string without space: $'
buf1 db 81
db ?
db 100 dup(0)
buf2 db 100 dup(0)
data ends
stack segment stack
db 100 dup(0)
stack ends
code segment
assume ds:data,ss:stack,cs:code

start:mov ax,data
mov ds,ax
lea dx,inf1
mov ah,9
int 21h

lea dx,buf1
mov ah,10
int 21h
lea si,buf1+1
mov ch,0
mov cl,[si]

lea di,buf2
lp1:
inc si
mov al,[si]
dec cx
cmp cx,0
jl show
cmp al,32
jz lp1
mov al,[si]
mov [di],al
inc di
jmp lp1

show:
mov byte ptr [di],'$'
lea dx,inf2
mov ah,9
int 21h
lea dx,buf2
mov ah,9
int 21h
mov ah,4ch
int 21h
code ends
end start本回答被网友采纳

输入一个字符串以回车符为结束,再输入一个整数,删除对应整数的字符,然 ...
while(s[i]!=0){ s[i]=s[i+1];++i;} printf("%s",s);}

汇编语言怎么实现一个字符串的输入与输出
; 输入结束在下一行输出此字符串。data segment str db 201 dup (0dh)data ends code segment assume cs:code,ds:data main proc far start:mov ax,data mov ds,ax lea si,str mov cx,200 inpstr: mov ah,06h int 21h jnz inpstr;无字符可读 mov [si],a1 inc si xor al,0dh jz...

用汇编语言试编写程序,从键盘输入字符以回车结束,统计输入的字符个数...
MOV DX, OFFSET MSG1 ;提示输入. MOV AH, 09H INT 21H MOV DX, OFFSET IN_1 ;接收键盘输入. MOV AH, 0AH INT 21H MOV DX, OFFSET CRLF ;回车换行. MOV AH, 09H INT 21H MOV DX, OFFSET BUFF ;输出原字符串. MOV AH, 09H INT 21H MOV DX, OFFSET MSG2 ;提示长度. MOV AH, 09H INT 2...

C语言:用函数编写一个程序,从键盘输入一个带有空格的字符串,去掉字符串...
1、首先,随便创建一个有main方法的类。2、定义一个字符串变量,这里给变量赋值,前后都留有一个空格。3、先运行一遍,看输出效果,可以看到百度包括空格的几个字符都打印出来了。4、为了更加清晰,用字符串对象另外一个方法“length()”得到此字符串的长度为6, 说明的确是“百度”加两个空格的长度。

汇编语言:从键盘输入字符,以回车键结束,将字符串中包含的字母输出到屏...
'9' JA @1 STOSB JMP @10 @1: CMP AL,'A' JB @10 CMP AL,'Z' JA @2 MOV [BX],AL INC BX JMP @

汇编语言时怎样无回显的输入一串字符串?
汇编语言无回显输入一串字符串,可以调用DOS功能中断INT 21H的07H功能。比如无回显输入一串字符串,以回车符结束,输入字符串最大长度200字符,示例程序如下:data segment str db 201 dup (0dh)data ends code segment assume cs:code,ds:data main proc far start:mov ax,data mov ds,ax call ...

编写一个程序,输入一个字符串(其长度不超过30),要求删除其中的空格后输...
Dim strTmp As String Dim MyInput As Integer Dim MyOutput strTmp = InputBox("请输入一个十进制数字:", "", "")If strTmp = "" Then Exit Sub If IsNumeric(strTmp) = False Then MsgBox "输入的不是数字", vbExclamation Exit Sub End If MyInput = Int(Val(strTmp))MyOutput = ...

接收键盘字符,(以回车键结束),并将其中的小写字母转变为大写字母,然 ...
接收键盘字符,(以回车键结束),并将其中的小写字母转变为大写字母,然后显示在屏幕上,请用汇编实现。试试下面的:DATA SEGMENT MSG1 DB 13, 10, 'Please input a STR : $'MSG2 DB 13, 10, 'The STR in Upper is: $'I1_L DB 100 I1_N DB ?I1_B DB 100 ...

C语言编程:从键盘输入一个有空格的字符串,删除所有重复字符,按字符升 ...
int main(int argc,char *argv[]){ char a[101],*p,*px,t;printf("Input a string...\\n");for(p=a,t=0;t<100;t++)\/\/输入字符串 if((*(p+t)=getchar())=='\\n')break;(p+t)='\\0';for(p=a;*p;p++)\/\/排序 for(px=p+1;*px;px++)if(*p>*px){ t=*p;p=*px...

从键盘输入一个字符串,删除字符串中所有空格后输出。
char)); \/\/将malloc函数返回的void *指针强制转换为char *指针 printf("请输入字符串:\\n");gets(p); \/\/输入字符串 printf("\\n删除了所有空格和标点符号的字符串\\n");while (*p){ if (isalpha(*p)){ printf("%c", *p);} p++;} printf("\\n");return 0;} 运行效果:...

相似回答