Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm: Общие вопросы > Правилен ли код?


Автор: Fedor 10.2.2006, 22:57
MASM

Код

.386
.MODEL  SMALL, C

DSEG SEGMENT
       a db 5
DSEG ENDS

pppp  PROTO far C P1:BYTE, P2:BYTE


CSEG SEGMENT
       ASSUME CS : CSEG, DS : DSEG
pppp  PROC far C P1:BYTE, P2:BYTE

        mov     al, P1
        mov     cl, P2
        add     al, cl        
                              
        ret
pppp  ENDP

CSEG ENDS
        END



Я подобный код буду использывать во связи с С++. Нужно знать, достаточен ли он? Или чего-то не хватает?

Автор: Fedor 11.2.2006, 09:51
Ответ нашел. Чтоб использовать код в С++, нужно убрать в процедуре far.

Автор: Chingachguk 12.2.2006, 02:21
Лучше использовать ассемблерные вставки, и компиллятор C++ сам разберется, какую модель памяти выбрать:

_asm {
mov al, P1
mov cl, P2
add al, cl
}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)