![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите разобраться со строкой кода
Gek1 © (2004-12-04 10:17:00)Мастера, скажите пожалуйста как мне ето перевести:
Есть у меня кусок кода на вражеском языке:
buffer[i] = buffer[i] ^ (unsigned char)(Key & 0xFF );
Пытаюсь перевести:
Buffer[i] := Buffer[i] XOR ???????? (Key And $FF);
Подскажите пожалуйста как заполнить недостающий кусок кода.
atruhin (2004-12-06 07:39:00) [1]если он пытается перевестито откуда все взяли XOR?
GEN++ (2004-12-05 00:28:00) [2]>jack128 ©
Только компилятор не знает что Key - unsigned int, вдруг
signed int - тогда могут быть фокусы со знаком (строго IMHO),
хотя навскидку мое мнение совпалало с Вашим. Тут может израть
роль реализация Си или Си++, напрмер Си для микроконтроллеров
иногда такие фокусы выкидыавет - пол дня, со стаканом,
разбираться (без стакана 1 день).
jack128 (2004-12-04 20:48:00) [3]GEN++ © (04.12.04 20:36) [3]
а что это меняет? все равно привидением мы отсечём все старшие байты.
GEN++ (2004-12-04 20:36:00) [4]Видимо переменная Key - многобайтовая, скорее всего
unsigned int
Anatoly Podgoretsky (2004-12-04 11:57:00) [5]А зачем And $FF
Jel (2004-12-04 10:28:00) [6]
> Buffer[i] := Buffer[i] XOR Byte(Key And $FF);