Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2014, 18:15   #11
Dimka-novitsek
Форумчанин
 
Аватар для Dimka-novitsek
 
Регистрация: 22.04.2013
Сообщений: 592
По умолчанию

сохранить полученное обратно в .exe ты не сможешь в 6.1.... ОООО.........
Dimka-novitsek вне форума Ответить с цитированием
Старый 15.05.2014, 21:35   #12
Dimka-novitsek
Форумчанин
 
Аватар для Dimka-novitsek
 
Регистрация: 22.04.2013
Сообщений: 592
По умолчанию

А вот,таюсб обьявить функцию.

Код:
static Funk()
{
auto a,b;

b=fopen("File.com","wb");}
2: Syntax error: static
Dimka-novitsek вне форума Ответить с цитированием
Старый 16.05.2014, 05:18   #13
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Если ты вводишь скрипт прямо в иде (через шифт+ф2) - функции там объявлять нельзя. Можно писать просто кусок кода, который должен выполниться.

Чтобы сделать с функциями, нужно записать его во внешний .idc-файл, и выполнить через альт+ф7.
Son Of Pain вне форума Ответить с цитированием
Старый 16.05.2014, 07:21   #14
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Цитата:
Сообщение от Son Of Pain Посмотреть сообщение
Нет. Сегменты в ассемблере заканчиваются директивой ends, а исходник целиком - директивой end.
Во-первых, да.
Во-вторых, ваш ответ не связан с моим постом.
В-третьих, найдите здесь ends
Код:
.model large
.data
 s1 DB "TEST STRING$"
.code
 mov AX, @data
 mov DS, AX
 lea DX, s1
 mov AH, 9h
 int 21h
 mov ax, 4c00h
 int 21h
end
а это компилируется и работает
p51x вне форума Ответить с цитированием
Старый 16.05.2014, 11:58   #15
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Во-вторых, ваш ответ не связан с моим постом.
Как же не связан, если:
Цитата:
Сообщение от p51x Посмотреть сообщение
Нет. Енд старт это обычно сегмент кода (.text), а дальше там еще и другие могуть быть.
Это утверждение очевидно неверно - можно открыть любой файл в ida и убедиться: директива end start будет написана в самом конце - т. е. после тех самых "других" сегментов, а не после .text. Кроме com-файлов всяких, где только один сегмент - тогда он и будет последним. Потому я и написал выше, что директивой end заканчивается листинг целиком, а не какой-то конкретный сегмент.

Цитата:
В-третьих, найдите здесь ends
Хорошо, будем буквоедствовать: сегменты в ассемблере в общем случае начинаются директивой segment и заканчиваются директивой ends; ida, соответственно, по умолчанию делает именно так; поскольку мы говорим о ней - я не посчитал нужным упоминать Борландовские расширения для краткого описания сегментов. Так сойдет? )
Son Of Pain вне форума Ответить с цитированием
Старый 16.05.2014, 13:37   #16
Dimka-novitsek
Форумчанин
 
Аватар для Dimka-novitsek
 
Регистрация: 22.04.2013
Сообщений: 592
По умолчанию

Son Of Pain
Спасибо!!! Да!!! Я еще не пробовал но уверен что это оно.

Всем спасибо!!
Dimka-novitsek вне форума Ответить с цитированием
Старый 16.05.2014, 14:48   #17
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Цитата:
Потому я и написал выше, что директивой end заканчивается листинг целиком, а не какой-то конкретный сегмент.
Листинг да, а последний сегмент нет. Релоки могут идти ПОСЛЕ сегмента кода, а вся ваша исполняемая часть обычно лежит именно в сегмента кода.

Цитата:
Хорошо, будем буквоедствовать
Будем, потому что именно сегмет и ендс это "Борландовские расширения для краткого описания сегментов" Пришедшие из тасма, кажись. .code и прочие - это масм (мелкософт) и насм, а еще есть area, section и все это фактически одно и тоже, распространенные, а форматы файлов поддерживаемые идой.
p51x вне форума Ответить с цитированием
Старый 16.05.2014, 18:18   #18
Dimka-novitsek
Форумчанин
 
Аватар для Dimka-novitsek
 
Регистрация: 22.04.2013
Сообщений: 592
По умолчанию

Насколько я вижу, всякие ends и иногда endp ниредко стоят во многих местах в некоторых программах, endp причем видимо относится к start и всигда одно. ends видно обозначают конец текстов а end start видимо обозначает полный конец программы! Во всяком случае, я это наблюдал в шести разных случаях

end start имеется всигда!!

Типичный пример как раз
Изображения
Тип файла: jpg энд старт.jpg (106.4 Кб, 143 просмотров)
Dimka-novitsek вне форума Ответить с цитированием
Старый 16.05.2014, 18:29   #19
Dimka-novitsek
Форумчанин
 
Аватар для Dimka-novitsek
 
Регистрация: 22.04.2013
Сообщений: 592
По умолчанию

Даказатильство
Изображения
Тип файла: jpg энд старт и.JPG (110.3 Кб, 136 просмотров)
Dimka-novitsek вне форума Ответить с цитированием
Старый 16.05.2014, 19:00   #20
Dimka-novitsek
Форумчанин
 
Аватар для Dimka-novitsek
 
Регистрация: 22.04.2013
Сообщений: 592
По умолчанию

Вот в типичном примере, к стати, есть строка
Код:
 mov     dx, 108h
Она указывает действительно на начало текста.

Я перенес текст ниже с помощью скрипта
Код:
auto a;
for(a=0x108;a<0x11A;a++) PatchByte([0x1000,a+0x20],Byte([0x1000,a]));
Для этого я предварительно открыл вчера файл в HeD и дописал ему после всего примерно 1000 nop-ов ,, 90 90 90 90 90 ......... ,, .
После это можно стало с файлом работать в IDA. То-есть, писать ниже.

Так вот. Как переправить
Код:
 mov     dx, 108h
в
Код:
 mov     dx, 128h
??

Я полтора часа искал команду “Assembler”, все жал, иследовал меню,
я жал наведя на строку клавишу <Ctrl-O> другие клавиши.. Нет, ничего не выходит и не миняется!

Я могу менять и в HeD, но я же учу IDA, и а если файл огромный и мне в HeD не очевидно!!
Dimka-novitsek вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
IDA Pro VintProg Софт 16 25.06.2010 19:32
Заголовки Portable Executable и IDA Pro lebedun Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 05.04.2009 22:38