Просмотр полной версии : по ассемблеру
Может кто знает сами исходники программ написаные на ассемблере
или кокие нибудь helpы по ассемблеру
заранее благодарю
Да..., я давно знаю "исходники программ"... Мы собираемся вечерами по пятницам, пьем пиво, едим чипсы, болтаем о жизни ... они клевые челы, мои старые друзья ... :-D
:)
А если серьезно, то что за исходники тебе нужны...??
Сюда глянь........
http://www.sources.ru/asm_src.shtml
какие исходники: -?
ну например простых програм,
я только учусь - для начинающего!
плиз
заранее благодарю
kompadre
12.09.2002, 20:22
Самый простой посмотреть ASM твоего кода это скомпилить экзэшник и десассемблировать его .
Предупреждение : если вы собираетесь это проделать , пусть с простейшей , прогой компилированной на VB или тому подобной каке , ничего хорошого не получется ...
Во первых - динамически подгружаемые библиотеки (DLL) без которых VB не может.
Во вторых - даже без DLL , чрезвычайная "через-жопость" бинарного кода свойственная только Microsoft Windows
Идиальный вариант - компилить и декомпилить на Linux-е
Если нету - скачать CygWin и компилить евонным (<- обожаю это словечко) GCC .
Для декомпиления (десассемблирования) - http://www.google.com/search?hl=es&ie=ISO-8859-1&q=disassembler&lr=
kompadre
12.09.2002, 20:33
Если ты совсем уж новичек (:))
1, Качаеш CygWin
2, Качаеш Dissasembler
3, Пишеш в любимом редакторе :
#include <stdio.h>
int main () {
printf ("Hello World");
return;
}
4. Сохраняешь в c:\projects\hello.c
5. В CygWin-e делаеш : gcc c:\projects\hello.c -o c:\projects\hello.exe
6. Run -> Command
7. В окошке доса пишеш [PATH к твоему дисассемблеру] c:\Projects\test.exe > c:\Projects\test.asm
8. Открываеш c:\Projects\test.asm ...
9. ... и тупо смотрем что к чему А и Б Стругацкие , "Понедельник начинается в субботу".
To kompadre^
Ну а че ты ему сразу не посоветовал открыть НЕХ-едитор, набрать там:
B4 09 BA 08 01 CD 21 C3 48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 24
Сохранить все ето дело и запустить...
и тупо смотреть в "Град обреченных" тех же авторов
IMHO : Cygwinom asm изучать - изврат
Ему надо TASM качать....
To serafim
Могу посоветовать книгу Юрова "Assembler для дошколят"
там прикольно ... :-)
helldomain
13.09.2002, 18:47
W principe esli ohota nauchitsya assembleru, nujno znat kak rabotajut bazowie algorithmi jeleza...
kompadre
15.09.2002, 05:54
2 Sh
:)
helldomain
16.09.2002, 02:12
Wspominaetsya odin sluchai - sideli nochju, mudohali asm pod wodochku, k utru ponyali, chto wirus nalabali. Tak wot: esli sobirajutsya tri progera na asme nochju za mashinoi - to wodku nado u nih otbirat.
Вспоминается другой случай: дал одной девушке диск с ассемблером и прочей шнягой, поучить ей захотелось....
и была на том диске папка с названием VIRUSES.... и были там асмовские и не только файлы......
На следующий день я получаю следующий вопрос: " мол, а что ето у тебя там за папочка интересная была"
"а в чем дело то?" спрашиваю..... и получаю ответ от которого просто выпадаю в аут...
"А ТАМ ПРОГРАММЫ КАКИЕ-ТО, Я ИХ КОМПИЛИЛА, ЗАПУСКАЛА - НО НИЧЕГО НЕ ПРОИСХОДИТ...."
....
На следующий день принес диск с антивирусом .................
helldomain
16.09.2002, 15:43
Mda... Eta dewushka tebya potom nogami ne bila ;-)))?
а собсна в наше время реально ли пользоваться ассемблером? или сложнова-то писать проги ?
Sancho777
...
Когда язык асма только появился, крутые прогеры говорили, что это - для ламаков. Мол, с псевдо-семантикой любой чего-нибудь приличное быстро накарябать сможет... А вот в двоичном коде (тогда еще были эти... перфоленты=))) пишут только 'Очень умные чуваки'.
Сейчас 'Очень умные чуваки' пишут в большинстве своём на Си (или Си++), а все остальные - на всяких там Билдерах-Делфи-Куликах-ВБА...... Лично я знаю только одного человека, который 2 года назад на диплом в институте сделал драйвер под флоппарь на асме....
Еще, насколько знаю, в некоторых институтах люди пишут на АСМе
А все почему? Потому что из стадии изучения и развития прогерство перешло в стадию использования... Со всеми вытекающими последствиями...
sasa001 нда уж, переводятся богатыри на руси :)
А как декомпилировать программы? Ведь там применяется ассемблер? Отладка - это же очень важно в наше время. Проблема информационной безопасности актульльна. Не зря же микрософт латает патчи каждый день.
Sancho777
Тока не декомпилировать, а дизассемблировать.... Хотя, кстати, и декомпиляция бы подошла =))
Допустим, ваяешь ты на Си что-то вроде
#include <stdio.h>
int main (void)
{
printf ("Hello World!\n");
return 0;
}
Компилишь компилятором. При компиляции сначала лепится объектный файл. Это - собственно, прога на асме, какой ее видит компилятор. Затем линкуешь линкером =)) - получается уже бинарник.... Под Линухом, кстати, очень удобно таким макаром проги делать ... ну да ладно...
Слинковали, значит. Теперь охота посмотреть, а чаво тама в Линухе такое происходит при компиляции этой мега-проги? ;=)
Для этого дела, собссно, и существует дебагер... (дизасм). В линухе это - gdb
Плюс ко всему, по умолчаию в прогу заносится еще и куча отладочной информации, по удалении которой вышеуказанная прога похудеет втрое....
Это так, вкратце ;=)
Теперь, значица, что касается информ безопасности.
Да, с помощью отладчика ты можешь посмотреть, чего там в памяти творится. В этом случае задача безопасности программы (чтобы некто не смог углядеть, чего в памяти прога творит и где она это творит) ложится на прогера и компилятор...
Вот теперь прикинь из всего того немногого, что я написал - каково это, наваять прогу, которая что-то творит в памяти и чтобы содержимое данной области памяти нельзя было изменить(а может, и прочитать своим процессом).....
Поэтому Микрософт не стоит ругать - невозможно создать защищенную прогу. Плюс ко всему еще и выполнять план 'Даешь одну Оську раз в 4 года' =)))
Sancho777:
Отладка - это же очень важно в наше время. Проблема информационной безопасности актульльна. Не зря же микрософт латает патчи каждый день.
И отладка и написание патчей делается не на асм( разве что оригинал был на асм)
ну понятно.
joker99 а ты хочешь сказать что и крэки уже не на асме пишут ? а почему у них тогда размер такой маленький ?
а кто на чем креки пишет. Кто привык к ассемблеру, на нем, кто привык к си на си.
дело вкуса.
ppiitt странно. значит я себе внушил предвзятое мнение что крэки пишут на асме. ладно бум терь на си писать :)
ты внушил себе что ТОЛЬКО на асме пишут.
Sancho777:
joker99 а ты хочешь сказать что и крэки уже не на асме пишут
Я вообщето крэки не упоминал, а говорил о дебаге и патчах.
Ну а крэк это просто программа которая изменяет другой файл, так что писать их можно на любом языке программирования. Другое дело узанть ЧТО изменить и в каком файле. А вот для этого уже нужно знать ассемблер.
sasa001
... Лично я знаю только одного человека, который 2 года назад на диплом в институте сделал драйвер под флоппарь на асме....
А нельзя ли попросить этого человека показать этот диплом?? :ooh:
да, было бы неполохо взглянуть на него :)
vBulletin® v3.8.5, Copyright ©2000-2024, Jelsoft Enterprises Ltd.