سؤال

أنت تستخدم

name DB "Foo",0

أن تعلن name أن تكون سلسلة البايت "Foo".

كيف تعلن أنها سلسلة كلمات بدلا من ذلك?(أي.16 بت لكل حرف)

تحرير:

أنا أبحث عن طريقة تعمل بشكل جيد داخل وحدات الماكرو ، على سبيل المثال.:

GenerateThunk macro Name
    .code
    &Name& proc public
        push    offset NAME
        jmp     &Name&__actual
    NAME:                               ;          I need something like this,
        &Name&_Name dw "&Name&", 0      ;     <--- but `dw' doesn't work!
    &Name& endp
endm
هل كانت مفيدة؟

المحلول

هل يمكن أن تفعل ذلك مع:

align 2
name DB "F", 0, "o", 0, "o", 0, 0, 0

اعتمادا على الترميز الذي تحتاجه.

داخل الماكرو ، قد تتمكن من أتمتة هذا باستخدام forc ماكرو ، شيء من هذا القبيل:

NAME:
    &Name&_Name
        forc chr,<&Name&>
            byte chr, 0
        endm
        byte 0

لم أحاول هذا لأنني لم يكن لديك الوصول إلى ماسم على مربع بلدي الحالي ، لذلك قد لا تعمل.

نصائح أخرى

أو استخدام كلمة، ... giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top