Сейчас на форуме: (+8 невидимых) |
eXeL@B —› Крэки, обсуждения —› Помогите плиз с asm |
Посл.ответ | Сообщение |
|
Создано: 05 января 2005 19:50 · Личное сообщение · #1 pushad lea edi,sizeof(key) ................. mov ebx,$2 start: mov eax, dword ptr name movzx eax, byte ptr [eax+ebx-$2] mov edx,dword ptr name movzx edx, byte ptr [edx+ebx-$1] add eax, edx mov ecx, $A xor edx, edx div ecx add edx, $30 mov [edi+ebx],dl //!!!!!!!!!!!!!!!! ошибка inc ebx dec esi jne start mov byte ptr [edi+ebx],0 inc edi mov key,dword ptr edi popad Звиняюсь но без листинга никак Вылетат runtime error 216 команда по адресу 0x8 обратилась к памяти по адресу 0X8 если заремарить строку с ошибкой все ок работает в чем ошибка?? Голову уже сломал подскажите плз. Могу выложить exe файл + исходники на delphi 7(40 кб) да еще, key и name - string PS просьба сильно не пинать |
|
Создано: 05 января 2005 21:36 · Поправил: geRC · Личное сообщение · #2 |
|
Создано: 05 января 2005 21:38 · Личное сообщение · #3 |
|
Создано: 05 января 2005 22:22 · Личное сообщение · #4 |
|
Создано: 06 января 2005 07:26 · Личное сообщение · #5 |
|
Создано: 06 января 2005 07:54 · Поправил: geRC · Личное сообщение · #6 Halt Это почему это будет access violation? Ведь ты сказал, что если убрать строчку mov [edi+ebx],dl //!!!!!!!!!!!!!!!! ошибкато всё работает нормально. Это значит, что инструкции mov eax, dword ptr name movzx eax, byte ptr [eax+ebx-$2]у тебя выполняются нормально. Но ведь в них такое же использование указателя, только вместо указателя на серийник - указатель на имя. Так что всё должно работать. |
|
Создано: 06 января 2005 16:04 · Личное сообщение · #7 |
|
Создано: 06 января 2005 16:35 · Личное сообщение · #8 |
eXeL@B —› Крэки, обсуждения —› Помогите плиз с asm |