汇编程序设计--不是很难来试一下

来源:百度知道 编辑:UC知道 时间:2024/05/10 14:58:18
设计一个程序,由用户输入8个字符,找出其中所有小写字母的个数,并显示。
二楼能不能解释一下啊,加分哦!呵呵,多谢!!!

这还不简单,我帮你解决,下次要记得给分啊.这个程序的缺点是输入和显示都在同一行.你要是想把输入和显示分开,只要加一个换行的代码就行了,其他的没什么毛病,我试过了.我还修改一处,lea si,buffer+2就是这个,一定要加2啊,不然不对.
程序如下:
data segment
bnm db 8 dup(?) ;数组
buffer db 8,?,8 dup(?) ;定义输入缓冲区
data ends
code segment
assume cs:code,ds:data
main proc far
mov ax,data
mov ds,ax
mov es,ax
lea dx,buffer ;输入字符串
mov ah,0aH
int 21h
lea si,buffer+2 ;把缓冲区的内容传给bnm
lea di,bnm
mov cx,8
rep movsb
mov bx,0 ;设置数组指针
bbb: cmp bnm[bx],61h ;跟61h和80h是判断是否为小写字母
jb abc
cmp bnm[bx],80h
ja abc
mov dl,bnm[bx] ;是小写字母的话,就显示
mov ah,2
int 21h
abc: inc bx ;指针加1
cmp bx,7
jnz bbb
mov ah,1 ;加这一行是为了能看到结果,不然一闪就没了
int 21h
mov ax,4c00h ;返回操作系统
int 21h
main endp
code ends
end main