
08.06.2008, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 01.04.2007
Сообщений: 1,268
Провел на форуме: 10046345
Репутация:
4589
|
|
Че за .. ?)))
Чтобы прохорить байт:
mov eax, offset
xor byte ptr [eax], you_key
|
|
|

08.06.2008, 03:06
|
|
Banned
Регистрация: 13.09.2006
Сообщений: 523
Провел на форуме: 2869410
Репутация:
925
|
|
procedure encrypt(str:pchar; len:integer;key:byte);
asm
pushad
mov ebx,str
mov ecx,len
mov eax,key
@cycle:
xor byte[ebx],al
inc eax
loop @cycle
popad
end;
|
|
|

08.06.2008, 10:55
|
|
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме: 3008839
Репутация:
1502
|
|
Сообщение от zl0y
procedure encrypt(str  char; len:integer;key:byte);
asm
pushad
mov ebx,str
mov ecx,len
mov eax,key
@cycle:
xor byte[ebx],al
inc eax
loop @cycle
popad
end;
По-моему, там какая-то ботва была передаваемыми параметрами... В делфе не помню, но в BP7.0 точно надо было пиать
типа так:
Код:
function ttt(a, b:integer);
var
a1, b1: integer;
begin
a1 := a;
b1 := b;
//а в асме уже с а1 и б1 работать...
__________________
Bedankt euch dafür bei euch selbst.
H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
|
|
|

08.06.2008, 13:29
|
|
Постоянный
Регистрация: 30.04.2008
Сообщений: 323
Провел на форуме: 379101
Репутация:
136
|
|
Надо знать почему и как что возникает, попробуй скомпилировать пример своего кода:
Код:
function encrypt(str:pchar; len,key:integer):pchar;assembler;
asm
mov ecx,0
@loop:
mov eax,str[ecx]
xor eax,key
mov str[ecx],eax
inc ecx
cmp ecx,len
jne @loop
end;
И потрасировать код посмотрев на значения регистров, отладка поможет тебе определить, что правильно, что нет, используй её в будущем, и когда ты научишся грамотно использовать отладчик, и работать в нем, ты сможешь находить ответы на вопросы, а также более серьезные вещи отлаживать.
Научись использовать отладчик. например: дельта-смещение, ну это уже вирусы...
А под ДОС (имхо) надо программировать, и отладчик поюзать типа TASM+TD, хорошо развивает, на примере: Калашникова - уроков 10-12 и все.
Последний раз редактировалось 0verbreaK; 08.06.2008 в 13:31..
|
|
|

08.06.2008, 15:01
|
|
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме: 3008839
Репутация:
1502
|
|
Сообщение от 0verbreaK
Надо знать почему и как что возникает, попробуй скомпилировать пример своего кода:
Код:
function encrypt(str:pchar; len,key:integer):pchar;assembler;
asm
mov ecx,0
@loop:
mov eax,str[ecx]
xor eax,key
mov str[ecx],eax
inc ecx
cmp ecx,len
jne @loop
end;
И потрасировать код посмотрев на значения регистров, отладка поможет тебе определить, что правильно, что нет, используй её в будущем, и когда ты научишся грамотно использовать отладчик, и работать в нем, ты сможешь находить ответы на вопросы, а также более серьезные вещи отлаживать.
Научись использовать отладчик. например: дельта-смещение, ну это уже вирусы...
А под ДОС (имхо) надо программировать, и отладчик поюзать типа TASM+TD, хорошо развивает, на примере: Калашникова - уроков 10-12 и все.
а дельта-то тут причём??
__________________
Bedankt euch dafür bei euch selbst.
H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
|
|
|

08.06.2008, 21:54
|
|
Постоянный
Регистрация: 30.04.2008
Сообщений: 323
Провел на форуме: 379101
Репутация:
136
|
|
Я кусок сообщения удалил, а это оставил.
PS. По твоему для дельты не нужен отладчик? Я имел ввиду, что для всего оссобенно для работы со стеком нужно использовать отладчик.
Код:
start:
Call _Delta
_Delta:
sub dword ptr [esp], offset _Delta
|
|
|

14.06.2008, 22:01
|
|
Постоянный
Регистрация: 04.12.2007
Сообщений: 424
Провел на форуме: 2364957
Репутация:
479
|
|
mov ah,09h
mov dx,mesag
int 21h
mov ah,07h
int 21h
mov ah,4ch
int 21h
int 20h
mesag db 'OMG$'
Мне выводит
♦V☺4♦4♦☺☺☺ ☻***************H♣ц*Т♣¶ ↑ Т♣**** ♣ ═!╦
┤ ║◄ ═!┤═!┤L═!═ OMG
где ошибка?
|
|
|

14.06.2008, 22:28
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
lea dx,mesag
mesag db 'OMG$',0
|
|
|

14.06.2008, 23:22
|
|
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме: 2360904
Репутация:
1393
|
|
Сообщение от Delimiter
lea dx,mesag
mesag db 'OMG$',0
или mov dx, offset mesag 
|
|
|

14.06.2008, 23:34
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
2 zo1b
угу! 8)))
|
|
|
|
 |
|
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Вопросы для новичков! (faq)
|
PEPSICOLA |
С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby |
92 |
14.05.2010 17:59 |
|
ОС с нуля
|
z01b |
С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby |
36 |
03.07.2008 15:30 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|