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

Вниз

IF не работает   Найти похожие ветки 

 
dimon_programmer ©   (2004-08-09 08:46) [0]

Пишу просмотрщик PCX. Код вот такой:
While not EOF(f)
do
begin
blockread(f,data,1);//читаем по одному байту
//самое интересное
IF (((data shr 6)and 3)=3) then//если старшие два бита-1
x:=(data shl 2) shr 2;
end;
В дебаге выражение после IF -true, а инструкция не выполняется, даже если else сделать.


 
Sergey Kaminski ©   (2004-08-09 08:48) [1]

какая "инструкция" не работает?


 
Anatoly Podgoretsky ©   (2004-08-09 09:15) [2]

Как проверяешь, что не работает, могу предположить только единственное, что переменная нигде не используется.


 
TUser ©   (2004-08-09 09:17) [3]

Так ее наверное оптимизатор пропустил. Этот x нигде не используется, поэтому - чего его считать?


 
Digitman ©   (2004-08-09 11:06) [4]


> IF (((data shr 6)and 3)=3) then//если старшие два бита-1


зачем "двигать" операнд, делая лишнее действие, если для данной проверки достаточно наложить маску ?

IF (data and $C0)= $C0 then ..


 
dimon_programmer ©   (2004-08-09 12:17) [5]

Спасибо, просто не доперло как сделать.



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
6-1087542460
Dennisius
2004-06-18 11:07
2004.08.22
Дискриминация других почтовых серверов на Yandex.RU


6-1083957540
AndersoNRules
2004-05-07 23:19
2004.08.22
Net Send


14-1091561632
децл
2004-08-03 23:33
2004.08.22
помогите новичку


11-1079045177
VoX
2004-03-12 01:46
2004.08.22
Баг в StrScan


3-1091433008
Last
2004-08-02 11:50
2004.08.22
Проверка вводимого значения в DBGrid