汇编实战一:大写字母转换成小写形式

DATAS SEGMENT
    ;此处输入数据段代码  
    str1 db "Please enter a captial letter:"
    db 0dh,0ah,'$'
    str2 db "Error Input"
    db 0dh,0ah,'$'
DATAS ENDS

STACKS SEGMENT
    ;此处输入堆栈段代码
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
    ;此处输入代码段代码
    
    MOV dx,offset str1
    MOV ah,9
    int 21h
    
    MOV ah,01
    int 21h
    
    CMP al,41H            ;将al与ASCII码为41H的字符比较
    JB exit
    CMP al,5AH            ;将al与ASCII码为5AH的字符比较
    JA exit
    
    ADD al,32            ;大写转小写
    
    MOV dl,al            ;打印语句
    MOV ah,02
    int 21h
    
    MOV AH,4CH            ;结束
    INT 21H
    
    exit:                ;之前比较的时候,如果错误,跳转到这个入口        
        MOV dx,offset str2
        MOV ah,9
        int 21h
        
        MOV ah,4ch
        int 21h
    
CODES ENDS
    END START

        写完了之后主要感受就是虽然是更接近底层的汇编语言,但其实其内容很多还是框架形式的,有点像 java 和 c++ 的一些结构框架,直接用就行,比如MOV ah,4ch   int 21h 就是代表结束,有点像封装的意思,很多都是一用就是很大块的完整代码,只需要改其中的一些参数就可以了。

猜你喜欢

转载自www.cnblogs.com/Rebel3/p/11620931.html