Помогите новичку
-
я бы рекомендовал вместо "div eax,2" использовать "shr eax,1". По смыслу одно и то же, но работает в разы быстрее
По смыслу не то же самое, кстати. Ибо div ещё edx как на вход принимает, так и на выходе затирает.
Да, я КО, но всё же.
Мдя, а это уже выше написали, правда, без уверенности в голосе.
Да, я КО, но всё же.
Мдя, а это уже выше написали, правда, без уверенности в голосе.
Мир сошел с ума - главный дизайнер проекта почти освоил ассемблер.
Напротив же, все хорошо.
mov ebx, 47<<16+100
"inc ebx" увеличит второе значение на 1, получим 101
вопрос: как увеличить число 47?
"inc ebx" увеличит второе значение на 1, получим 101
вопрос: как увеличить число 47?
Из хаоса в космос
add ebx, 1 SHL 16
Или, что то же самое, add ebx, 1<<16
Spoiler:
Чё-то мне захотелось изучить ассемблер... Он даже начал мне немного нравиться, а хуже всего то, что я даже уже думаю, что некоторые моменты в Си можно сделать проще. Может меня Марат заколдовал? :Dmov ecx,20*65536+216 ; y and depth
Пишу код:
Code: Select all
mcall 48,4
mov ecx, eax
shr ecx, 16
add ecx, 216
Из хаоса в космос
Может shl?Leency wrote: shr ecx, 16
Точно, спасибо!
1) Я так понимаю shr сдвигает вправо?
2) можно ли как-то оптимизировать этот код/записать в однк строку?
вроде
lea ecx, [eax]*65536+216 ?
1) Я так понимаю shr сдвигает вправо?
2) можно ли как-то оптимизировать этот код/записать в однк строку?
Code: Select all
mov ecx, eax
shr ecx, 16
add ecx, 216
lea ecx, [eax]*65536+216 ?
Из хаоса в космос
1) Именно, ты прав
2) lea загружает из памяти
то, что делает твой код:
a) eax=11223344; ecx=11223344
б) ecx=00001122
в) ecx = (00001122+216)
Если бы копировались младшие 2 байта из eax, то можно было бы сделать movzx ecx, ax вместо первых двух команд.
2) lea загружает из памяти
то, что делает твой код:
a) eax=11223344; ecx=11223344
б) ecx=00001122
в) ecx = (00001122+216)
Если бы копировались младшие 2 байта из eax, то можно было бы сделать movzx ecx, ax вместо первых двух команд.
lea можно использовать как сложение, например lea eax, [eax + 216]. Хотя в данном случае бесполезно
Мде... сразу видно мозг развращенный ЯВУ.
Толсто. Долго ты ещё будешь дуться?Mario wrote:Мде... сразу видно мозг развращенный ЯВУ.
P.S. Радоваться надо - человек изучает
Из хаоса в космос
Как только так сразу, после дождичка и на горе.
Who is online
Users browsing this forum: No registered users and 1 guest