回覆列表
  • 1 # 使用者5443769950533

    DATA SEGMENT

    inbuf DB 100 ;可能輸入的最大字元數

    db 0 ;實際輸入字元數

    db 100 DUP("$") ;輸入緩衝

    DATA ENDS

    CODE SEGMENT

    ASSUME CS:CODE,DS:DATA

    START:

    MOV AX,DATA

    MOV DS,AX

    mov di,OFFSET inbuf

    ;輸入字串

    MOV AH,0AH

    MOV DX,di

    INT 21H

    xor cx,cx

    mov cl,[di+1] ;迴圈次數(輸入字元數)

    lea si,[di+2] ;輸入串起始地址

    ;迴圈比較

    next1:

    cmp byte ptr [si],"A"

    jb skip1

    cmp byte ptr [si],"Z"

    ja skip1

    or byte ptr [si],20h ;轉小寫

    skip1:

    inc si

    loop next1

    MOV DL,0AH

    MOV AH,02H

    INT 21H

    ;輸出字串

    lea DX,[di+2]

    MOV AH,09H

    INT 21H

    mov cl,[di+1] ;迴圈次數(輸入字元數)

    lea si,[di+2] ;輸入串起始地址

    next2:

    cmp byte ptr [si],"a"

    jb skip2

    cmp byte ptr [si],"z"

    ja skip2

    xor byte ptr [si],20h ;轉大寫

    skip2:

    inc si

    loop next2

    ;輸出字串

    MOV DL,0AH

    MOV AH,02H

    INT 21H

    lea DX,[di+2]

    MOV AH,09H

    INT 21H

    MOV AH,0

    INT 16H

    MOV AX,4C00H

    INT 21H

    CODE ENDS

    END START

    masm611編譯執行透過。

  • 中秋節和大豐收的關聯?
  • 索尼全畫幅微單,支援眼控對焦的有哪些?價效比高的又有哪些?