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

Вниз

Ассемблерная строчка не компилится под D7, под D5 нормально   Найти похожие ветки 

 
lipskiy ©   (2003-09-13 17:36) [0]

Проект работал в D5, перешел на D7, возникла ошибка в следующей ассемблерной вставке:

procedure SetByteBit(var X:Byte;Cnt:Byte);
asm
Mov CL,[EAX]
Bts ECX,DL
Mov [EAX],CL
end;


Компилятор на строчке Bts ECX,DL выдает ошибку:
Operand size mismatch

Как это исправить, подскажите, плз?


 
Anatoly Podgoretsky ©   (2003-09-13 17:51) [1]

Правильно ругает, такой комбинации регистров нет

Opcode Instruction Description
0F AB BTS r/m16,r16 Store selected bit in CF flag and set
0F AB BTS r/m32,r32 Store selected bit in CF flag and set
0F BA /5 ib BTS r/m16,imm8 Store selected bit in CF flag and set
0F BA /5 ib BTS r/m32,imm8 Store selected bit in CF flag and set

В Д6 ассмблер стал строже, DL надо заменить на EDX


 
dataMaster ©   (2003-09-13 17:55) [2]

может надо

Bts ECX,D X ???


 
dataMaster ©   (2003-09-13 17:57) [3]

опоздал :-)


 
Anatoly Podgoretsky ©   (2003-09-13 18:04) [4]

Я думаю ему нужна жта строка
0F AB BTS r/m32,r32 Store selected bit in CF flag and set


 
lipskiy ©   (2003-09-14 22:19) [5]

Спасибо!!!



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
4-82533
miwa
2003-07-25 11:56
2003.09.25
Как можно (если можно) использовать вывод функции Win32Check


14-82389
Karnegi.
2003-09-04 14:28
2003.09.25
Почемы вы не поставите себе Delphi7????


3-82132
andy-ivt
2003-09-04 11:34
2003.09.25
Подключение к сетевой БД с помощью InterBase Express


14-82408
Agent[007]
2003-08-31 11:21
2003.09.25
???


6-82350
Маратей_И
2003-07-25 13:44
2003.09.25
Раскажите про WININET.PAS