Сейчас на форуме: bartolomeo, -Sanchez- (+4 невидимых)

 eXeL@B —› Вопросы новичков —› как понять ?
Посл.ответ Сообщение

Ранг: 6.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 26 января 2006 04:22
· Личное сообщение · #1

обьясните плииз...

если на входе: EAX=61(a)
EDX=5F(_)

то как понять:

XOR EAX,EDX
CDQ
IDIV EBX
ADD DL,41

на выходе должно быть: EDX=4D(M)




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 26 января 2006 05:13
· Личное сообщение · #2

mov eax,"a"
mov edx,"_"

xor eax,edx ; eax = 3Eh
cdq ; edx = 0
idiv ebx ; eax = 0, edx = 3Eh
add dl,41 ; add dl, 29h -> edx = 67h

-----
EnJoy!




Ранг: 6.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 26 января 2006 05:24
· Личное сообщение · #3

Jupiter пишет:
xor eax,edx ; eax = 3Eh

обьясни подробнее(eax=eax-edx?)

Jupiter пишет:
idiv ebx

откуда брать делимое и делитель?
тоже поподробнее




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 26 января 2006 05:32
· Личное сообщение · #4

Во-перых, почитай доки по опкодам, хотя бы чуток изучи асм.
xor - исключающее или
61h xor 5Fh = 3Eh (можешь на калькуляторе проверить)
cdq - Convert Double to Quad, Converts signed DWORD in EAX to a signed quad word in EDX:EAX by extending the high order bit of EAX throughout EDX
IDIV - Signed Integer Division, Signed binary division of accumulator by source. If source is a byte value, AX is divided by "src" and the quotient is stored in AL and the remainder in AH. If source is a word value, DX:AX is divided by "src", and the quotient is stored in AL and the remainder in DX.

-----
EnJoy!




Ранг: 6.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 26 января 2006 05:42
· Личное сообщение · #5

я незнаю english, а переводчики корявые.......

Jupiter пишет:
почитай доки по опкодам


где их взять?




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 26 января 2006 05:46
· Личное сообщение · #6

начни хотя бы с www.exelab.ru/pro/asm.php

-----
EnJoy!





Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 26 января 2006 17:26
· Личное сообщение · #7

Да, еще много литературы по Ассемблеру, можно откопать на www.wasm.ru
Там замечательные книги и статьи.

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.




Ранг: 174.2 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 27 января 2006 00:18
· Личное сообщение · #8

...и англицкий всё-таки учи - пригодится



Ранг: 5.8 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 января 2006 01:17
· Личное сообщение · #9

SamoVar пишет:
XOR EAX,EDX
CDQ
IDIV EBX
ADD DL,41

Чего то знакомый код такой.
Это случаем не кусок крякми с http://www.crackmes.de http://www.crackmes.de ?



Ранг: 4.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 02 февраля 2006 17:34 · Поправил: buian_B
· Личное сообщение · #10

подскажите плз. как понять вот это:


ADD BYTE PTR DS:[EAX],AH
ADD EAX,21993




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 02 февраля 2006 18:44
· Личное сообщение · #11

buian_B
1. add byte ptr [eax],ah
по адресу, на который указывает eax, добавить значение регистра ah
2. add eax,21993
к значению eax прибавить 21993

-----
EnJoy!



 eXeL@B —› Вопросы новичков —› как понять ?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати