⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 l2.asm

📁 汇编语言编写的
💻 ASM
字号:
DATA  SEGMENT
      INS DB 'PLEASE PUT IN A STRING:',0AH,0DH,'$'
      INL DB 'PLEASE PUT IN THE LETTER YOU WANT:',0AH,0DH,'$'
      OUTMES1 DB 'THE TURN OVER STRING IS:',0AH,0DH,'$'
      OUTMES2 DB 'THE COUNT OF THE LETTER YOU WANT IS:',0AH,0DH,'$'
      STRLEN DB ?
      STRING DB 100
             DB ?
             DB 100 DUP(?)
DATA  ENDS

STACK  SEGMENT PARA STACK'STACK'
	   STR DB 100 DUP(?)	   
STACK  ENDS

CODE SEGMENT
     ASSUME CS:CODE,DS:DATA,SS:STACK
START PROC FAR
BEGIN:
    PUSH DS
    MOV AX,0
    PUSH AX
    MOV AX,DATA
    MOV DS,AX
    MOV AX,STACK
    MOV SS,AX
    
RD1: MOV DX,OFFSET INS
     MOV AH,09H
     INT 21H
    
PUTS:MOV DX,OFFSET STRING
     MOV AH,0AH
     INT 21H
     MOV DL,0DH
     MOV AH,02H
     INT 21H
     MOV DL,0AH
     MOV AH,02H
     INT 21H
    
    MOV DX,OFFSET STRING+2
    MOV AH,09H
    INT 21H
    MOV DL,0DH
    MOV AH,02H
    INT 21H
    MOV DL,0AH
    MOV AH,02H
    INT 21H
    
   ; MOV DX,OFFSET INL
   ; MOV AH,09H
    ;INT 21H
    
    ;MOV DL,0DH
   ;MOV AH,02H
   ; INT 21H
    ;MOV DL,0AH
   ; MOV AH,02H
   ; INT 21H
    
    
    MOV BX,OFFSET STRING
    INC BX
    MOV CL,[BX]
    MOV STRLEN,CL
    
    MOV DL,0DH
    MOV AH,02H
    INT 21H
    MOV DL,0AH
    MOV AH,02H
    INT 21H
    SHR CL,1
    MOV BX,0
TURN:MOV AL,STRING[BX]+2
     PUSH BX
     MOV DX,WORD PTR STRLEN
     SUB DX,BX
     MOV BX,DX
     XCHG AL,STRING[BX-1]+2
     POP BX
     MOV STRING[BX]+2,AL
     INC BX
     LOOP TURN
    
    MOV DX,OFFSET OUTMES1
    MOV AH,09H
    INT 21H
    
    MOV BX,OFFSET STRING
    ADD BX,2
    MOV DX,BX
    MOV AH,09H
    INT 21H
COUNT:MOV DX,OFFSET INL
      MOV AH,09H
      INT 21H

      MOV AH,01H
      INT 21H
      MOV LETTER,AL
      LEA BX,STRING
      ADD BX,2
      MOV CL,STRLEN
      
      MOV AL,0
LOP:  MOV DL,[BX]
      CMP LETTER,DL
      JNZ  DONE
      INC AL
DONE: INC BX	
      LOOP LOP

OUTL: OR AL,30H
      MOV DL,AL
      MOV AH,02H
      INT 21H       
      RET
START ENDP      
CODE  ENDS
      END BEGIN

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -