无法评估这个表达式?

时间:2015-05-24 19:12:28

标签: assembly emulation x86-16

我的装配程序有问题,我自己有一个未知的错误! 在我写完这段代码之后:

codesg segment para 'code'
    assume cs:codesg, ds:codesg, ss:codesg
    org 100h
    Begin : jmp main
    Text1 db ' ali ahmadi ' , '$'
    Text2 db 10?
    main proc
        lea si,text1
        lea di,text2
        cld
        mov cx,11
        rep movsb
        mov ah,09h
        lea dx,text2
        int 21h
        ret
        main endp
    codesg ends
end Begin

我有一个错误告诉我:“无法评估此表达式10?” 我的问题在哪里?

1 个答案:

答案 0 :(得分:1)

Text2 db 10?

汇编程序无法接受 10?,因为它既不是有效数字也不是有效文本。
Text2被假定为足够大的缓冲区,以便从Text1接收字符串。只需写下:

Text2  db  13 dup (?)