Сейчас на форуме: rmn, Magister Yoda, vasilevradislav, tyns777, zombi-vadim (+6 невидимых)

 eXeL@B —› Программирование —› Disasm + выделение адресса
Посл.ответ Сообщение


Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 10 августа 2008 15:53
· Личное сообщение · #1

Подскажите идею , мне нужно дисасмить код проги любой и выставлять его в ричедит или пока под вопросом в какой контрол чтобы можно было выделять адреса. Например 41000 по 41028 в контроле , и потом передать его в переменную. Размер и диапазон. Код писать буду на асме. Буду рад примеру такого контрола и идеям. СПСб

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 10 августа 2008 16:16
· Личное сообщение · #2

ListView - 2 колонки, адрес + листинг, я так делал.

-----
[nice coder and reverser]




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

Создано: 11 августа 2008 09:25
· Личное сообщение · #3

RichView - можно цветами выделать нужное




Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 11 августа 2008 09:54
· Личное сообщение · #4

Писать win32 UI код на асме - отличная идея. Обработчики сообщений, цвета, структуры данных под List View... Mak, ты ж не мелочись, набивай сразу в машинный код по интеловским докам, что б по-мужски было всё.




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 11 августа 2008 13:14
· Личное сообщение · #5

s0larian ты как всегда в своем стиле =) что не совет так подкол. Ты меня закалибать решил ? Очнись =) вся микроэлектроника на асме .. пора менять приоритеты , проповедник и то в курсе был.

Кстати ты был прав , я начал уже набирать такой код , цели могут быть широкие =)

LazzY пишет:
RichView - можно цветами выделать нужное

это что за контрол такой? .. РичЕдит может ?

Hellspawn пишет:
ListView - 2 колонки, адрес + листинг, я так делал.

=) ок , возьму на заметку

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 11 августа 2008 19:57
· Личное сообщение · #6

mak пишет:
Очнись =) вся микроэлектроника на асме .. пора менять приоритеты , проповедник и то в курсе был.

В каком веке? Почти для любого микро-контроллера есть C cross-compiler. Код пишется на С и используются асм вставки/макросы для спец. инструкций.

Ну а если подняться чуть выше уровня контроллера за $3 (за кол-во 1000 и выше) то там про асм забыли 15 лет назад. Всё что работает на даже на мелких routers, switches, etc написано на С. Ессно и тут есть асм вставки. В серьёзном сетевом оборудовании вообще стоят сильные процы (например c PowerPC cores производства IBM) и крутится спец. embedded операционка (например VxWorks/oldschool или Integrity/microkernel). Куски асма есть в драйверах, а остальное - мегабайты С кода.

Чувак, ты програмером работал когда-нить? Очнись.




Ранг: 462.8 (мудрец), 468thx
Активность: 0.280
Статус: Участник
Only One!

Создано: 11 августа 2008 23:41
· Личное сообщение · #7

s0larian пишет:
Писать win32 UI код на асме - отличная идея.


Кто как хочет, тот так и дро...т!
Мак-у удобно писать на масм-е, тебе на Си...
Главное конечный результат...
А если человек напишет большой проект на масме... так ему руку нужно пожать... т.к. это не так просто как к примеру на Си или ВижелСи и т.д. и т.п., т.е. языках высокого уровня...

Ибо ассемблер - язык Бога... а все другие языки можно сравнить с диалектами человеческого языка...

s0larian пишет:
Чувак, ты програмером работал когда-нить?


Работать можно кем угодно, и дворником тоже
А кодером не работают ..этим живут... я так скажу...
И самое главное этим не понтяться.... ИМХО конечно...

-----
aLL rIGHTS rEVERSED!





Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 12 августа 2008 03:04 · Поправил: s0larian
· Личное сообщение · #8

DaRKSiDE пишет:
Ибо ассемблер - язык Бога... а все другие языки можно сравнить с диалектами человеческого языка...

Ну да... Скажи, а какой именно асм есть язык бога? x86? PowerPC? Или, может Sun Sparc? И что, мне, скажем, реализацию IPSec писать заново для каждой платформы на её собственном божественном языке? Не смеши мои старые штиблеты Именно по этому был создан С.

DaRKSiDE пишет:
Работать можно кем угодно, и дворником тоже
А кодером не работают ..этим живут... я так скажу...
И самое главное этим не понтяться...

Енто, я спросил не ради понта. Это просто попрос рациональности. Это как сосну на дрова пилить лобзиком - конечно можно, но смысла нет. Ессно, в коммерческих компаниях время разработки есть деньги, и след-но таким маразмом не страдают. Ну а любитель... он может чурбак пол года надфилем пилить, и потом кто-нить скажет "Прикольно, базара нет. Но нах это надо? Из любви к высокому искусству?"



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

Создано: 12 августа 2008 05:48
· Личное сообщение · #9

mak DaRKSiDE
ну да, я тож так думал года 2 назад А щас с s0larian согласен. Асм знать конечно очень хорошо, но не стоит тупо упираться, что он лучший.




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 12 августа 2008 13:27
· Личное сообщение · #10

s0larian пишет:
Ну да... Скажи, а какой именно асм есть язык бога? x86? PowerPC? Или, может Sun Sparc?

Что за бред ? .. речь шла о ассемблере , ассемблер универсальный язык , програмирование устройств для науки идет на асме. Где я работал ? .. на заводе иностранном по тех обслуживанию больших силикатных машин по всему миру , вся аппаратура чисто на асме , никаких си.

Товарищи мои на атомных станциях , чисто АСм , никаких си .. и других языков. Первый вопрос руководителя , вы сдали тест на скорость програмирования , тетс заключается в том что ты должен решать на асм практически любую задачу и сразу писать быстро код. Есть ли такие люди ? да есть , и зарплата у них достойная. Типичный пример всем известный колаэдр ... управление катушками через компьютер на ассемблере. Ассемблер язык 0 1 переведенных в понятную струкутуру.

Чтобы облегчить задачу программстов (не основная цель) придумали имплементацию других вариантов языка. А это уже вопрос шаблонов и готовых частей. Поэтому и есть разделение .. ты кто ? А я програмист на ява. А ты ? ..А я наделфе - а что другое не учили ? .. ну в общих чертах.

А в среде програмистов есть такое понятие , качество кода ... качество кода измеряется в конечном итоге продукта , например игры , в игре полный 0 , графики нет , отстой какой то , а она работает только на крутой машине , почему ??? .. потому что вопрос скоростной продажи вышел на перед и качество кода упало.

Закон экономики гласит , есть 2 пути , первый промышленный второй качественный. В каждой части ставится ставка на свой приоритет. Сравнение калибри , мини винда на асме и хп , которая в процессах глобализации рынка , делает все более большие продукты , а статистика показывает что качество кода и его функционал для обычного пользователя стал неимоверно плох. У калибри приоритет был сделать самую мелкую винду , сделали на асм.

Большой проект скорее будешь медленно писать не из за асма а из за отсутсвия опыта и человеческого фактора. Таким же боком на Си , я напишу тоже не много , почему ? ..потому что мало опыта.
Также и тут писать win32 приложения с цветами и стилями , это не капельки не трудно , когда ты уже начал.
А борьба этих двух составляющих будет всегда , и друг без друга они тоже не смогут

Вот .. вообщем если нет советов по теме более, я закрою тему.

В другой ветке форума был вопрос , почему я задаю вопросы , папа прокурор
Задавать вопросы оч полезно , кому то стыдно их задавать кому то нет , в поисках лучшего решения тем более.
Практика идет в ногу со знанием. (Конфуций). Сегодня я задам вопрос , а завтра вы спросите меня , такова сущность учений.

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube




Ранг: 38.7 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 12 августа 2008 14:46 · Поправил: SniperOK
· Личное сообщение · #11

Ибо ассемблер - язык Бога... а все другие языки можно сравнить с диалектами человеческого языка...
И у каждого бога свой ассемблер
http://www.hex-rays.com/idapro/gallery/index.htm http://www.hex-rays.com/idapro/gallery/index.htm

адд:
s0larian уже написал, не заметил




Ранг: 462.8 (мудрец), 468thx
Активность: 0.280
Статус: Участник
Only One!

Создано: 12 августа 2008 20:10
· Личное сообщение · #12

SniperOK пишет:
И у каждого бога свой ассемблер


Бог один, это люди разделили его на иссуса, пророка, кришну и т.д.

-----
aLL rIGHTS rEVERSED!





Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 12 августа 2008 20:55 · Поправил: s0larian
· Личное сообщение · #13

mak пишет:
то за бред ? .. речь шла о ассемблере , ассемблер универсальный язык , програмирование устройств для науки идет на асме.

ты говоришь просто маразм - асм для конкретного проца создаётся создателем проца. Ты понимаешь что инструкции на Sun Sparc отличаются от PowerPC и от Intel x86? Например на Sparc при branch-e силикон выполняет след-ую инструкцию до самого branch. Или вот, на PowerPC нельзя загрузить 32 бита в регистр одной инструкцией, т.к. вся инст-ция 4 байта. Тут нету никакой универсальности - всё надо переписать с ноля для другой системы.

От написания системы на асме нету прямого выигрыша в производительности или размере. Просто то что делает асмо-писатель - предворительная оптимизация (premature optimization). То есть, тебе приходится писать медленно, на низком уровне думая про ресурсы. На С всё делается быстрее, с меньшим кол-вом ошибок т.к. компилер делает много рутинной работы. Например для кода иницализации, который отрабатывает один раз мне пох в каком регистре лежит счётчик.

После написания надо смотреть где что кушает проц или память и вычищать. Причём только если это надо. Вот это и есть нормальный инженерный процесс. Ессно надо продумать вперёд что и где скорее всего придётся оптимизировать что б не делать дважды. Всё упирается в то, что на асме ты оптимизируешь всю прогу с самого начала, а это бессмысленная трата времени. На С важные куски можно дочистить до уровня асма, или сделать вставки для спец. инструкциями. Именно из-за этого С специалист напишет эквиволент проги быстрее чем апсм спец. И отладки будут меньше. И добавлять вещи проще. И отламывается при изменении меньше. Это написано в каждой книге по програмизму и рассказывается в каждом нормальном универе. Тема - "уровень абстракции" - там где это не надо, не будем думать про регистры а будем думать про алгоритмы - пусть библиотека и компилятор сделают рутинную работу, т.к. програмер делать одно и то же раз за разом не должен. Он не токарь.

Именно по этому был написан С. В 70-каком-то году люди уже компилили С код под разные процы. А ты в 2008м живёшь бреднями 60-х.

Помнишь сколько ты отлаживал приём данных с sockets? С код я бы тебе поправил за 15 минут, а тот асм ты вообще добил до рабочего состояния?



Ранг: 63.8 (постоянный), 2thx
Активность: 0.030
Статус: Участник

Создано: 12 августа 2008 21:39
· Личное сообщение · #14

s0larian
выигрыш производительности у асма есть, но только в определенных задачах - зачастую руками можно лучше оптимизировать код чем это сделает компилятор... но это имеет смысл только в критичных для производительности местах и никак не в работе с интерфейсом




Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 12 августа 2008 22:02
· Личное сообщение · #15

drin, так я и отписал что можно ручками дочистить небольшой критически-важный кусок. Ну или что-то для чего нужна специальная инструкция... доступ к какому-нить апаратному ресурсу.




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 12 августа 2008 22:57
· Личное сообщение · #16

s0larian добил =) и не только пошел быстрыми темпами вперед , и опыта стало больше. Вот и твоя сущность , я так и подозревал , Я те скажу ты настоящий ПРОГРАММИСТ , почему я так думаю ? ..Да потому что они так делают как ты. Вместо чем помочь всякую херню прогнал о которой я и так знал. Вместо того чтобы четко ответить на вопрос , развел философию на 10 томные пособия. Вот это методы 60 - х годов.

Здрасте я хочу яблок , здрасте .. о а вы понимаете что они красные ??? .. мля я сказал хочу! ... ну чтож я могу вам предложить красных яблок ... мля да давай уже .. нет вы знаете я вам не предложу , вы не так выглядите .. млин иди продавай свои яблоки в деревню

Ты в праве мог не помогать , но тогда мог бы вообще молчать ! Судя потом у что я тя тоже не забыл , то у нас взаимная любовь Опять устроил срач в моем топике! Все тема закрыта , все коментарии в личку...

А что касается темы то время покажет , в майкрософт я бы тебя не взял

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube



 eXeL@B —› Программирование —› Disasm + выделение адресса
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати