2

我有这段代码,据我说应该将每个字符切换为其大写形式,我已经检查了位掩码,这很好。但是,当我打印字符串时,它仍然是小写形式。

            .MODEL SMALL
            .STACK 
                    .DATA

MEN         DB      'abcd'


        .CODE

            ORG     100H
MAIN        PROC    FAR

            LEA     BX, MEN+1
            MOV   CX, 20

OTRO:       MOV     AH,[BX]
            CMP      AH, 61H 
            JB          OTRO2
            CMP     AH, 7AH
            JA         OTRO2
            AND     AH, 11011111B 
            MOV     [BX], AH

  OTRO2:    INC        BX
            LOOP    OTRO
            MOV     AX, 4C00H
            INT       21H

  MAIN      ENDP

  END     MAIN
4

1 回答 1

2

你跳过了第一个字符,

LEA     BX, MEN+1

并循环超出字符串的长度,

MOV   CX, 20

但除此之外,它似乎在这方面起作用。你是如何打印字符串的?它不在提供的代码中。

于 2012-11-15T01:44:02.303 回答