汇编语言实现小写转为大写

来源:互联网 发布:flume采集mysql数据库 编辑:程序博客网 时间:2024/06/08 19:15

法一:

DATA SEGMENT

    MES1    DB  'Input:',0AH,0DH,'$'
    MES2    DB  0AH,0DH,'Output:',0AH,0DH,'$'
    XXX     DB  10,?,10 DUP('$')
DATA ENDS


CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV  AX,DATA
MOV  DS,AX
 
        LEA  DX,MES1
        MOV  AH,9
        INT  21H


INPUT:  LEA  DX,XXX
        MOV  AH,0AH
        INT  21H
 
        LEA  DX,MES2
        MOV  AH,9
        INT  21H


        MOV  CL,XXX+1
        MOV  CH,0
        LEA  BX,XXX+2
OUTPUT:
        MOV  DL,[BX]
        SUB  DL,20H
        MOV  AH,2
        INT  21H
        INC  BX
        LOOP OUTPUT
        
        MOV  AX,4C00H
        INT  21H
CODE  ENDS

       END   START


DATA SEGMENT
    MES1    DB  'Input:',0AH,0DH,'$'
    MES2    DB  0AH,0DH,'Output:',0AH,0DH,'$'
    XXX     DB  10,?,10 DUP('$')
DATA ENDS


法二:

CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV  AX,DATA
MOV  DS,AX
 
        LEA  DX,MES1
        MOV  AH,9
        INT  21H




INPUT:  LEA  DX,XXX
        MOV  AH,0AH
        INT  21H
 
        LEA  DX,MES2
        MOV  AH,9
        INT  21H


        MOV  CL,XXX+1
        MOV  CH,0
        LEA  BX,XXX+2
OUTPUT:
        MOV  DX,[BX]
        SUB  DX,20H
        MOV  [BX],DX
        INC  BX
        LOOP OUTPUT
        
        LEA  DX,XXX+2
        MOV  AH,9
        INT  21H


        MOV  AX,4C00H
        INT  21H
CODE  ENDS
       END   START

        
0 0