此程序可以统计$的个数,情大虾们帮我把$的首地址也一并输出


DATAS SEGMENT
BUF   DB 20
      DB ?
      DB 20 DUP(?)    
INERR DB 'PELASE INPUT:$'
F     DW -1
E     DW ?
DATAS ENDS

STACKS SEGMENT
     DB 200 DUP(0)
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,ES:DATAS,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
    MOV ES,AX  
    
    MOV AH,9
    LEA DX,INERR
    INT 21H
    
    MOV AH,10
    LEA DX,BUF
    INT 21H
          
    MOV CX,WORD PTR[BUF+1]
    LEA DI,BUF+2
    CLD
    MOV BX,0
    
LP: MOV AL,'$'
    REPNE SCASB 
    JNE ET
    JMP ZZ

      
ET: MOV AH,2
    MOV DL,0AH
    INT 21H
    
    MOV AH,2
    MOV DL,0DH
    INT 21H
    
    ADD BL,30H
    SUB BL,4
    MOV AH,2
    MOV DL,BL
    INT 21H

    MOV AH,4CH
    INT 21H
    
ZZ: 
   MOV F,DI
   INC BX
   JMP LP
 
CODES ENDS
    END START[em14]