当前位置:编程学习 > 汇编语言 >>

用汇编语言,将指定字符串中所有符号(不包括空格)转换成“*”号,不要求输入,只要求输出

可以自定义需转换的字符串,例如 本来的string可以是:“JAVA: How to Program,,D.P." 输出应该是:”JAVA* How to Program**D*P*“ 请问这个程序怎么写,在线等,急,谢谢!!!
其他:assume cs:code
code segment
db 'JAVA: How to Program, , D.P.','$'
start:
mov ax,cs
mov ds,ax
sub si,si  ;ds:si=cs:0
big:
cmp byte ptr [si],'$' 
je ok
cmp byte ptr [si],'0'
jb space
cmp byte ptr [si],'9'
jna next
cmp byte ptr [si],'A'  
jb space
cmp byte ptr [si],'Z'  
jna next
cmp byte ptr [si],'a'  
jb change
cmp byte ptr [si],'z' 
jna next
jmp short change
space:
cmp byte ptr [si],' '  
je next
change:
mov byte ptr [si],'*'
next:
inc si
jmp short big
ok:
sub dx,dx ;ds:dx=cs:0
mov ah,9
int 21h
mov ah,7
int 21h
mov ax,4c00h
int 21h
code ends
end start
除了数字和字母我全部用*代替。不知是否还要改进 (当然要用英文的标点符号.如果是汉字标点符号,当做2个字节,会把这2个都变成*) 

上一个:汇编语言解释
下一个:汇编语言,此程序是求4个数6,88,13,46的和,求解释

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,