| 发表于:2007-05-11 14:16:529楼 得分:90 |
data segment var db 23,34,45,60,90,00;00为结束 num db 0 ;取一个变量 n equ $-var str1 db 'find! ', '$ ' str2 db 'nofind! ' '$ ' data ends code segment assume cs:code,ds:data bg: mov ax,data mov ds,ax mov cx,n lea si,var next: cmp byte ptr[si],00 je findover ;检查是否结束查找 cmp byte ptr[si],60 ;是否为a, jne noeq ;为不为a则转 inc num ;为a计数 noeq: inc si loop next findover: cmp num,00 ;看看计数器里有没有值 jne lp1 ;有a则转 mov ah,9 ;没有a提示 lea dx,str2 int 21h jmp exit lp1: ;假设最多9个 mov al,num ;显示个数 add al,30h mov dl,al mov ah,2 int 21h ;2号功能调用 mov ah,9 ;输出提示 lea dx,str1 int 21h exit: mov ah,4ch int 21h code ends end bg ;在你的程序基础上做的修改... ;没有调试工具,你还得自己试试哈 | | |
|