非法数字错误 - 小写到大写的转换 (0xdf)

Illegal Number Error - lowercase to uppercase conversion (0xdf)

我正在使用 Tasm,并且在使用 and bl, 0xdf 时遇到这个非法数字错误。我曾尝试在 'df' 之前添加“0”,因为根据其他人的说法,这也很重要。为什么会出现此错误?

p1:
        mov ah, 2
        mov dl, 10
        int 21h
        mov ah, 9
        lea dx, d
        int 21h
        mov ah, 1
        int 21h
        mov bl, al

    p2:
        mov ah, 2
        mov dl, 10
        int 21h
        mov ah, 9
        lea dx, e
        int 21h
        mov ah, 1
        int 21h
        mov bh, al

    round:
        mov ah,2 
        and bl, 0xdf 
        cmp bl, 'R'
        je p1R
        cmp bl, 'P'
        je p1P
        cmp bl, 'S'
        je p1S

TASM 对十六进制数使用 ..h 格式,而不是 0x..

将常量写为 0dfh,类似于您编写其他常量(如 21h)的方式。