Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.17;
Скачать: CL | DM;

Вниз

Асемблеровские вставки в FreePascal   Найти похожие ветки 

 
syte_ser78 ©   (2004-01-29 14:52) [0]

Как выполнять вставку кода ассемблера в FreePascal?

При обычном

asm
mov ah,2
....

пишет что не знает что такое ah....


 
Dada   (2004-01-29 14:55) [1]

>syte_ser78 © (29.01.04 14:52)

>пишет что не знает что такое ah....

Аh это Ahtung....


 
PVOzerski ©   (2004-01-29 15:03) [2]

Либо добавляем {$asmmode Intel}, либо переписываем asm в стиле AT&T. В данном примере это будет так:
asm
movb $2,%ah

При всем том рекомендую 2-й путь, так как поддержка Intel-овского стиля - не без глючков.


 
PVOzerski ©   (2004-01-29 15:04) [3]

:^) А вот слово Achtung пишется иначе...


 
syte_ser78 ©   (2004-01-29 15:09) [4]

Наверное глупый вопрос, а как обьявлять метки?


 
PVOzerski ©   (2004-01-29 15:23) [5]

2[4]:
var
X:longint;
begin
asm
movl $0xFF,%eax
jmp .L1
xorl %eax,%eax
.L1:
movl %eax,X
end;
writeln(X);
end.


 
syte_ser78 ©   (2004-01-29 15:41) [6]

Очень давно писал на ассемблере, поэтому если не сложно, еще пара детских вопросов

asm
movb $0, %ah
.L1:
// inc %cx
add $1,%cx
mov $177,%dx
movb $2,%ah
int $21
cmp $2000,%cx
jnz .L1
end;

Этот код должен заполнить экран в текстовом режиме символами с кодом 177. Но он этого не далает...


 
Nikky ©   (2004-01-29 17:07) [7]


> syte_ser78 © (29.01.04 15:41) [6]


Очнитесь, 21-ый век на дворе %)


 
syte_ser78 ©   (2004-01-29 17:22) [8]


> Очнитесь, 21-ый век на дворе %)

В смысле?



Страницы: 1 вся ветка

Текущий архив: 2004.02.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.022 c
14-53726
SPeller
2004-01-29 10:36
2004.02.17
Microsoft предлагает лекарство от спама


14-53725
Agent[007]
2004-01-26 18:55
2004.02.17
TStrings


3-53395
phpist
2004-01-22 19:13
2004.02.17
Обновление BLOB-полей в ZeosDB


1-53460
ЧупаЧупч
2004-02-06 14:44
2004.02.17
Списки


7-53791
DNS
2003-11-26 22:22
2004.02.17
TRegistry and WriteBinaryData